<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pm24.git/net, branch v3.1-rc5</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>https://git.kobert.dev/pm24.git/atom/net?h=v3.1-rc5</id>
<link rel='self' href='https://git.kobert.dev/pm24.git/atom/net?h=v3.1-rc5'/>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/'/>
<updated>2011-08-26T16:49:04Z</updated>
<entry>
<title>netpoll: fix incorrect access to skb data in __netpoll_rx</title>
<updated>2011-08-26T16:49:04Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-08-26T06:26:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=e9278a475f845833b569ca47171e64fe48c616e0'/>
<id>urn:sha1:e9278a475f845833b569ca47171e64fe48c616e0</id>
<content type='text'>
__netpoll_rx() doesnt properly handle skbs with small header

pskb_may_pull() or pskb_trim_rcsum() can change skb-&gt;data, we must
reload it.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem</title>
<updated>2011-08-26T14:33:51Z</updated>
<author>
<name>John W. Linville</name>
<email>linville@tuxdriver.com</email>
</author>
<published>2011-08-26T14:33:51Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=e2e6be56df37c371f564e127c154036b0c2211a1'/>
<id>urn:sha1:e2e6be56df37c371f564e127c154036b0c2211a1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>sendmmsg/sendmsg: fix unsafe user pointer access</title>
<updated>2011-08-25T02:45:03Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2011-08-25T02:45:03Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=bc909d9ddbf7778371e36a651d6e4194b1cc7d4c'/>
<id>urn:sha1:bc909d9ddbf7778371e36a651d6e4194b1cc7d4c</id>
<content type='text'>
Dereferencing a user pointer directly from kernel-space without going
through the copy_from_user family of functions is a bad idea. Two of
such usages can be found in the sendmsg code path called from sendmmsg,
added by

commit c71d8ebe7a4496fb7231151cb70a6baa0cb56f9a upstream.
commit 5b47b8038f183b44d2d8ff1c7d11a5c1be706b34 in the 3.0-stable tree.

Usages are performed through memcmp() and memcpy() directly. Fix those
by using the already copied msg_sys structure instead of the __user *msg
structure. Note that msg_sys can be set to NULL by verify_compat_iovec()
or verify_iovec(), which requires additional NULL pointer checks.

Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
Signed-off-by: David Goulet &lt;dgoulet@ev0ke.net&gt;
CC: Tetsuo Handa &lt;penguin-kernel@I-love.SAKURA.ne.jp&gt;
CC: Anton Blanchard &lt;anton@samba.org&gt;
CC: David S. Miller &lt;davem@davemloft.net&gt;
CC: stable &lt;stable@kernel.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>arp: fix rcu lockdep splat in arp_process()</title>
<updated>2011-08-25T00:55:00Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-08-22T19:32:42Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=20e6074eb8e096b3a595c093d1cb222f378cd671'/>
<id>urn:sha1:20e6074eb8e096b3a595c093d1cb222f378cd671</id>
<content type='text'>
Dave Jones reported a lockdep splat triggered by an arp_process() call
from parp_redo().

Commit faa9dcf793be (arp: RCU changes) is the origin of the bug, since
it assumed arp_process() was called under rcu_read_lock(), which is not
true in this particular path.

Instead of adding rcu_read_lock() in parp_redo(), I chose to add it in
neigh_proxy_process() to take care of IPv6 side too.

 ===================================================
 [ INFO: suspicious rcu_dereference_check() usage. ]
 ---------------------------------------------------
 include/linux/inetdevice.h:209 invoked rcu_dereference_check() without
protection!

 other info that might help us debug this:

 rcu_scheduler_active = 1, debug_locks = 0
 4 locks held by setfiles/2123:
  #0:  (&amp;sb-&gt;s_type-&gt;i_mutex_key#13){+.+.+.}, at: [&lt;ffffffff8114cbc4&gt;]
walk_component+0x1ef/0x3e8
  #1:  (&amp;isec-&gt;lock){+.+.+.}, at: [&lt;ffffffff81204bca&gt;]
inode_doinit_with_dentry+0x3f/0x41f
  #2:  (&amp;tbl-&gt;proxy_timer){+.-...}, at: [&lt;ffffffff8106a803&gt;]
run_timer_softirq+0x157/0x372
  #3:  (class){+.-...}, at: [&lt;ffffffff8141f256&gt;] neigh_proxy_process
+0x36/0x103

 stack backtrace:
 Pid: 2123, comm: setfiles Tainted: G        W
3.1.0-0.rc2.git7.2.fc16.x86_64 #1
 Call Trace:
  &lt;IRQ&gt;  [&lt;ffffffff8108ca23&gt;] lockdep_rcu_dereference+0xa7/0xaf
  [&lt;ffffffff8146a0b7&gt;] __in_dev_get_rcu+0x55/0x5d
  [&lt;ffffffff8146a751&gt;] arp_process+0x25/0x4d7
  [&lt;ffffffff8146ac11&gt;] parp_redo+0xe/0x10
  [&lt;ffffffff8141f2ba&gt;] neigh_proxy_process+0x9a/0x103
  [&lt;ffffffff8106a8c4&gt;] run_timer_softirq+0x218/0x372
  [&lt;ffffffff8106a803&gt;] ? run_timer_softirq+0x157/0x372
  [&lt;ffffffff8141f220&gt;] ? neigh_stat_seq_open+0x41/0x41
  [&lt;ffffffff8108f2f0&gt;] ? mark_held_locks+0x6d/0x95
  [&lt;ffffffff81062bb6&gt;] __do_softirq+0x112/0x25a
  [&lt;ffffffff8150d27c&gt;] call_softirq+0x1c/0x30
  [&lt;ffffffff81010bf5&gt;] do_softirq+0x4b/0xa2
  [&lt;ffffffff81062f65&gt;] irq_exit+0x5d/0xcf
  [&lt;ffffffff8150dc11&gt;] smp_apic_timer_interrupt+0x7c/0x8a
  [&lt;ffffffff8150baf3&gt;] apic_timer_interrupt+0x73/0x80
  &lt;EOI&gt;  [&lt;ffffffff8108f439&gt;] ? trace_hardirqs_on_caller+0x121/0x158
  [&lt;ffffffff814fc285&gt;] ? __slab_free+0x30/0x24c
  [&lt;ffffffff814fc283&gt;] ? __slab_free+0x2e/0x24c
  [&lt;ffffffff81204e74&gt;] ? inode_doinit_with_dentry+0x2e9/0x41f
  [&lt;ffffffff81204e74&gt;] ? inode_doinit_with_dentry+0x2e9/0x41f
  [&lt;ffffffff81204e74&gt;] ? inode_doinit_with_dentry+0x2e9/0x41f
  [&lt;ffffffff81130cb0&gt;] kfree+0x108/0x131
  [&lt;ffffffff81204e74&gt;] inode_doinit_with_dentry+0x2e9/0x41f
  [&lt;ffffffff81204fc6&gt;] selinux_d_instantiate+0x1c/0x1e
  [&lt;ffffffff81200f4f&gt;] security_d_instantiate+0x21/0x23
  [&lt;ffffffff81154625&gt;] d_instantiate+0x5c/0x61
  [&lt;ffffffff811563ca&gt;] d_splice_alias+0xbc/0xd2
  [&lt;ffffffff811b17ff&gt;] ext4_lookup+0xba/0xeb
  [&lt;ffffffff8114bf1e&gt;] d_alloc_and_lookup+0x45/0x6b
  [&lt;ffffffff8114cbea&gt;] walk_component+0x215/0x3e8
  [&lt;ffffffff8114cdf8&gt;] lookup_last+0x3b/0x3d
  [&lt;ffffffff8114daf3&gt;] path_lookupat+0x82/0x2af
  [&lt;ffffffff8110fc53&gt;] ? might_fault+0xa5/0xac
  [&lt;ffffffff8110fc0a&gt;] ? might_fault+0x5c/0xac
  [&lt;ffffffff8114c564&gt;] ? getname_flags+0x31/0x1ca
  [&lt;ffffffff8114dd48&gt;] do_path_lookup+0x28/0x97
  [&lt;ffffffff8114df2c&gt;] user_path_at+0x59/0x96
  [&lt;ffffffff811467ad&gt;] ? cp_new_stat+0xf7/0x10d
  [&lt;ffffffff811469a6&gt;] vfs_fstatat+0x44/0x6e
  [&lt;ffffffff811469ee&gt;] vfs_lstat+0x1e/0x20
  [&lt;ffffffff81146b3d&gt;] sys_newlstat+0x1a/0x33
  [&lt;ffffffff8108f439&gt;] ? trace_hardirqs_on_caller+0x121/0x158
  [&lt;ffffffff812535fe&gt;] ? trace_hardirqs_on_thunk+0x3a/0x3f
  [&lt;ffffffff8150af82&gt;] system_call_fastpath+0x16/0x1b

Reported-by: Dave Jones &lt;davej@redhat.com&gt;
Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bridge: fix a possible use after free</title>
<updated>2011-08-25T00:49:24Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-08-23T19:57:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=22df13319d1fec30b8f9bcaadc295829647109bb'/>
<id>urn:sha1:22df13319d1fec30b8f9bcaadc295829647109bb</id>
<content type='text'>
br_multicast_ipv6_rcv() can call pskb_trim_rcsum() and therefore skb
head can be reallocated.

Cache icmp6_type field instead of dereferencing twice the struct
icmp6hdr pointer.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bridge: Pseudo-header required for the checksum of ICMPv6</title>
<updated>2011-08-25T00:49:00Z</updated>
<author>
<name>Yan, Zheng</name>
<email>zheng.z.yan@intel.com</email>
</author>
<published>2011-08-23T22:54:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=4b275d7efa1c4412f0d572fcd7f78ed0919370b3'/>
<id>urn:sha1:4b275d7efa1c4412f0d572fcd7f78ed0919370b3</id>
<content type='text'>
Checksum of ICMPv6 is not properly computed because the pseudo header is not used.
Thus, the MLD packet gets dropped by the bridge.

Signed-off-by: Zheng Yan &lt;zheng.z.yan@intel.com&gt;
Reported-by: Ang Way Chuang &lt;wcang@sfc.wide.ad.jp&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mcast: Fix source address selection for multicast listener report</title>
<updated>2011-08-25T00:46:15Z</updated>
<author>
<name>Yan, Zheng</name>
<email>zheng.z.yan@intel.com</email>
</author>
<published>2011-08-23T22:54:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=e05c4ad3ed874ee4f5e2c969e55d318ec654332c'/>
<id>urn:sha1:e05c4ad3ed874ee4f5e2c969e55d318ec654332c</id>
<content type='text'>
Should check use count of include mode filter instead of total number
of include mode filters.

Signed-off-by: Zheng Yan &lt;zheng.z.yan@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bridge: fix a possible net_device leak</title>
<updated>2011-08-22T23:49:56Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-08-22T06:05:59Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=11f3a6bdc2528d1ce2af50202dbf7138fdee1b34'/>
<id>urn:sha1:11f3a6bdc2528d1ce2af50202dbf7138fdee1b34</id>
<content type='text'>
Jan Beulich reported a possible net_device leak in bridge code after
commit bb900b27a2f4 (bridge: allow creating bridge devices with netlink)

Reported-by: Jan Beulich &lt;JBeulich@novell.com&gt;
Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Acked-by: Stephen Hemminger &lt;shemminger@vyatta.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mac80211: fix suspend/resume races with unregister hw</title>
<updated>2011-08-22T18:21:40Z</updated>
<author>
<name>Stanislaw Gruszka</name>
<email>sgruszka@redhat.com</email>
</author>
<published>2011-08-12T12:00:59Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=ecb4433550f0620f3d1471ae7099037ede30a91e'/>
<id>urn:sha1:ecb4433550f0620f3d1471ae7099037ede30a91e</id>
<content type='text'>
Do not call -&gt;suspend, -&gt;resume methods after we unregister wiphy. Also
delete sta_clanup timer after we finish wiphy unregister to avoid this:

WARNING: at lib/debugobjects.c:262 debug_print_object+0x85/0xa0()
Hardware name: 6369CTO
ODEBUG: free active (active state 0) object type: timer_list hint: sta_info_cleanup+0x0/0x180 [mac80211]
Modules linked in: aes_i586 aes_generic fuse bridge stp llc autofs4 sunrpc cpufreq_ondemand acpi_cpufreq mperf ext2 dm_mod uinput thinkpad_acpi hwmon sg arc4 rt2800usb rt2800lib crc_ccitt rt2x00usb rt2x00lib mac80211 cfg80211 i2c_i801 iTCO_wdt iTCO_vendor_support e1000e ext4 mbcache jbd2 sd_mod crc_t10dif sr_mod cdrom yenta_socket ahci libahci pata_acpi ata_generic ata_piix i915 drm_kms_helper drm i2c_algo_bit video [last unloaded: microcode]
Pid: 5663, comm: pm-hibernate Not tainted 3.1.0-rc1-wl+ #19
Call Trace:
 [&lt;c0454cfd&gt;] warn_slowpath_common+0x6d/0xa0
 [&lt;c05e05e5&gt;] ? debug_print_object+0x85/0xa0
 [&lt;c05e05e5&gt;] ? debug_print_object+0x85/0xa0
 [&lt;c0454dae&gt;] warn_slowpath_fmt+0x2e/0x30
 [&lt;c05e05e5&gt;] debug_print_object+0x85/0xa0
 [&lt;f8a808e0&gt;] ? sta_info_alloc+0x1a0/0x1a0 [mac80211]
 [&lt;c05e0bd2&gt;] debug_check_no_obj_freed+0xe2/0x180
 [&lt;c051175b&gt;] kfree+0x8b/0x150
 [&lt;f8a126ae&gt;] cfg80211_dev_free+0x7e/0x90 [cfg80211]
 [&lt;f8a13afd&gt;] wiphy_dev_release+0xd/0x10 [cfg80211]
 [&lt;c068d959&gt;] device_release+0x19/0x80
 [&lt;c05d06ba&gt;] kobject_release+0x7a/0x1c0
 [&lt;c07646a8&gt;] ? rtnl_unlock+0x8/0x10
 [&lt;f8a13adb&gt;] ? wiphy_resume+0x6b/0x80 [cfg80211]
 [&lt;c05d0640&gt;] ? kobject_del+0x30/0x30
 [&lt;c05d1a6d&gt;] kref_put+0x2d/0x60
 [&lt;c05d056d&gt;] kobject_put+0x1d/0x50
 [&lt;c08015f4&gt;] ? mutex_lock+0x14/0x40
 [&lt;c068d60f&gt;] put_device+0xf/0x20
 [&lt;c069716a&gt;] dpm_resume+0xca/0x160
 [&lt;c04912bd&gt;] hibernation_snapshot+0xcd/0x260
 [&lt;c04903df&gt;] ? freeze_processes+0x3f/0x90
 [&lt;c049151b&gt;] hibernate+0xcb/0x1e0
 [&lt;c048fdc0&gt;] ? pm_async_store+0x40/0x40
 [&lt;c048fe60&gt;] state_store+0xa0/0xb0
 [&lt;c048fdc0&gt;] ? pm_async_store+0x40/0x40
 [&lt;c05d0200&gt;] kobj_attr_store+0x20/0x30
 [&lt;c0575ea4&gt;] sysfs_write_file+0x94/0xf0
 [&lt;c051e26a&gt;] vfs_write+0x9a/0x160
 [&lt;c0575e10&gt;] ? sysfs_open_file+0x200/0x200
 [&lt;c051e3fd&gt;] sys_write+0x3d/0x70
 [&lt;c080959f&gt;] sysenter_do_call+0x12/0x28

Cc: stable@kernel.org
Signed-off-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
</content>
</entry>
<entry>
<title>atm: br2684: Fix oops due to skb-&gt;dev being NULL</title>
<updated>2011-08-20T21:13:05Z</updated>
<author>
<name>Daniel Schwierzeck</name>
<email>daniel.schwierzeck@googlemail.com</email>
</author>
<published>2011-08-19T12:04:20Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=fbe5e29ec1886967255e76946aaf537b8cc9b81e'/>
<id>urn:sha1:fbe5e29ec1886967255e76946aaf537b8cc9b81e</id>
<content type='text'>
This oops have been already fixed with commit

    27141666b69f535a4d63d7bc6d9e84ee5032f82a

    atm: [br2684] Fix oops due to skb-&gt;dev being NULL

    It happens that if a packet arrives in a VC between the call to open it on
    the hardware and the call to change the backend to br2684, br2684_regvcc
    processes the packet and oopses dereferencing skb-&gt;dev because it is
    NULL before the call to br2684_push().

but have been introduced again with commit

    b6211ae7f2e56837c6a4849316396d1535606e90

    atm: Use SKB queue and list helpers instead of doing it by-hand.

Signed-off-by: Daniel Schwierzeck &lt;daniel.schwierzeck@googlemail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
