<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/net, branch linux-2.6.30.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>ipv4: additional update of dev_net(dev) to struct *net in ip_fragment.c, NULL ptr OOPS</title>
<updated>2009-12-04T05:14:57+00:00</updated>
<author>
<name>David Ford</name>
<email>david@blue-labs.org</email>
</author>
<published>2009-11-30T07:02:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=b260d762f963bf8d518c28b3524dca40af5d416e'/>
<id>b260d762f963bf8d518c28b3524dca40af5d416e</id>
<content type='text'>
commit bbf31bf18d34caa87dd01f08bf713635593697f2 upstream.

ipv4 ip_frag_reasm(), fully replace 'dev_net(dev)' with 'net', defined
previously patched into 2.6.29.

Between 2.6.28.10 and 2.6.29, net/ipv4/ip_fragment.c was patched,
changing from dev_net(dev) to container_of(...).  Unfortunately the goto
section (out_fail) on oversized packets inside ip_frag_reasm() didn't
get touched up as well.  Oversized IP packets cause a NULL pointer
dereference and immediate hang.

I discovered this running openvasd and my previous email on this is
titled:  NULL pointer dereference at 2.6.32-rc8:net/ipv4/ip_fragment.c:566

Signed-off-by: David Ford &lt;david@blue-labs.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit bbf31bf18d34caa87dd01f08bf713635593697f2 upstream.

ipv4 ip_frag_reasm(), fully replace 'dev_net(dev)' with 'net', defined
previously patched into 2.6.29.

Between 2.6.28.10 and 2.6.29, net/ipv4/ip_fragment.c was patched,
changing from dev_net(dev) to container_of(...).  Unfortunately the goto
section (out_fail) on oversized packets inside ip_frag_reasm() didn't
get touched up as well.  Oversized IP packets cause a NULL pointer
dereference and immediate hang.

I discovered this running openvasd and my previous email on this is
titled:  NULL pointer dereference at 2.6.32-rc8:net/ipv4/ip_fragment.c:566

Signed-off-by: David Ford &lt;david@blue-labs.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>netfilter: nf_nat: fix inverted logic for persistent NAT mappings</title>
<updated>2009-10-05T15:28:02+00:00</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2009-09-17T11:58:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=1590abee1d64ba508d6c3dab7953b4c2fe71c50d'/>
<id>1590abee1d64ba508d6c3dab7953b4c2fe71c50d</id>
<content type='text'>
netfilter: nf_nat: fix inverted logic for persistent NAT mappings

Upstream commit cce5a5c3:

Kernel 2.6.30 introduced a patch [1] for the persistent option in the
netfilter SNAT target. This is exactly what we need here so I had a quick look
at the code and noticed that the patch is wrong. The logic is simply inverted.
The patch below fixes this.

Also note that because of this the default behavior of the SNAT target has
changed since kernel 2.6.30 as it now ignores the destination IP in choosing
the source IP for nating (which should only be the case if the persistent
option is set).

[1] http://git.eu.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=98d500d66cb7940747b424b245fc6a51ecfbf005

Signed-off-by: Maximilian Engelhardt &lt;maxi@daemonizer.de&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
netfilter: nf_nat: fix inverted logic for persistent NAT mappings

Upstream commit cce5a5c3:

Kernel 2.6.30 introduced a patch [1] for the persistent option in the
netfilter SNAT target. This is exactly what we need here so I had a quick look
at the code and noticed that the patch is wrong. The logic is simply inverted.
The patch below fixes this.

Also note that because of this the default behavior of the SNAT target has
changed since kernel 2.6.30 as it now ignores the destination IP in choosing
the source IP for nating (which should only be the case if the persistent
option is set).

[1] http://git.eu.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=98d500d66cb7940747b424b245fc6a51ecfbf005

Signed-off-by: Maximilian Engelhardt &lt;maxi@daemonizer.de&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>netfilter: ebt_ulog: fix checkentry return value</title>
<updated>2009-10-05T15:28:01+00:00</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2009-09-17T11:58:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=18a7b9d594cee02968fa0ecc597cca7604408780'/>
<id>18a7b9d594cee02968fa0ecc597cca7604408780</id>
<content type='text'>
netfilter: ebt_ulog: fix checkentry return value

Upstream commit 8a56df0a:

Commit 19eda87 (netfilter: change return types of check functions for
Ebtables extensions) broke the ebtables ulog module by missing a return
value conversion.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
netfilter: ebt_ulog: fix checkentry return value

Upstream commit 8a56df0a:

Commit 19eda87 (netfilter: change return types of check functions for
Ebtables extensions) broke the ebtables ulog module by missing a return
value conversion.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>netfilter: bridge: refcount fix</title>
<updated>2009-10-05T15:28:01+00:00</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2009-09-17T11:58:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5ce09d6356a53318161a0f9c8a5ff5dbc312a06d'/>
<id>5ce09d6356a53318161a0f9c8a5ff5dbc312a06d</id>
<content type='text'>
netfilter: bridge: refcount fix

Upstream commit f3abc9b9:

commit f216f082b2b37c4943f1e7c393e2786648d48f6f
([NETFILTER]: bridge netfilter: deal with martians correctly)
added a refcount leak on in_dev.

Instead of using in_dev_get(), we can use __in_dev_get_rcu(),
as netfilter hooks are running under rcu_read_lock(), as pointed
by Patrick.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
netfilter: bridge: refcount fix

Upstream commit f3abc9b9:

commit f216f082b2b37c4943f1e7c393e2786648d48f6f
([NETFILTER]: bridge netfilter: deal with martians correctly)
added a refcount leak on in_dev.

Instead of using in_dev_get(), we can use __in_dev_get_rcu(),
as netfilter hooks are running under rcu_read_lock(), as pointed
by Patrick.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>net: Make the copy length in af_packet sockopt handler unsigned</title>
<updated>2009-10-05T15:28:00+00:00</updated>
<author>
<name>Arjan van de Ven</name>
<email>arjan@linux.intel.com</email>
</author>
<published>2009-09-30T11:54:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=80a761c59bfe01de1deeb5fc66f5b7fbb3e1bfcf'/>
<id>80a761c59bfe01de1deeb5fc66f5b7fbb3e1bfcf</id>
<content type='text'>
fixed upstream in commit b7058842c940ad2c08dd829b21e5c92ebe3b8758 in a different way

The length of the to-copy data structure is currently stored in
a signed integer. However many comparisons are done with sizeof(..)
which is unsigned. It's more suitable for this variable to be unsigned
to make these comparisons more naturally right.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fixed upstream in commit b7058842c940ad2c08dd829b21e5c92ebe3b8758 in a different way

The length of the to-copy data structure is currently stored in
a signed integer. However many comparisons are done with sizeof(..)
which is unsigned. It's more suitable for this variable to be unsigned
to make these comparisons more naturally right.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>net ax25: Fix signed comparison in the sockopt handler</title>
<updated>2009-10-05T15:27:59+00:00</updated>
<author>
<name>Arjan van de Ven</name>
<email>arjan@linux.intel.com</email>
</author>
<published>2009-09-30T11:51:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=1a3e625b499e0567956996c55876ea5cafad150b'/>
<id>1a3e625b499e0567956996c55876ea5cafad150b</id>
<content type='text'>
fixed upstream in commit b7058842c940ad2c08dd829b21e5c92ebe3b8758 in a different way

The ax25 code tried to use

        if (optlen &lt; sizeof(int))
                return -EINVAL;

as a security check against optlen being negative (or zero) in the
set socket option.

Unfortunately, "sizeof(int)" is an unsigned property, with the
result that the whole comparison is done in unsigned, letting
negative values slip through.

This patch changes this to

        if (optlen &lt; (int)sizeof(int))
                return -EINVAL;

so that the comparison is done as signed, and negative values
get properly caught.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fixed upstream in commit b7058842c940ad2c08dd829b21e5c92ebe3b8758 in a different way

The ax25 code tried to use

        if (optlen &lt; sizeof(int))
                return -EINVAL;

as a security check against optlen being negative (or zero) in the
set socket option.

Unfortunately, "sizeof(int)" is an unsigned property, with the
result that the whole comparison is done in unsigned, letting
negative values slip through.

This patch changes this to

        if (optlen &lt; (int)sizeof(int))
                return -EINVAL;

so that the comparison is done as signed, and negative values
get properly caught.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>cfg80211: fix looping soft lockup in find_ie()</title>
<updated>2009-09-24T15:27:10+00:00</updated>
<author>
<name>Bob Copeland</name>
<email>me@bobcopeland.com</email>
</author>
<published>2009-09-01T22:12:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=222c06bae9ee5b2ecdabf6b54fc67e28f93867ea'/>
<id>222c06bae9ee5b2ecdabf6b54fc67e28f93867ea</id>
<content type='text'>
commit fcc6cb0c13555e78c2d47257b6d1b5e59b0c419a upstream.

The find_ie() function uses a size_t for the len parameter, and
directly uses len as a loop variable.  If any received packets
are malformed, it is possible for the decrease of len to overflow,
and since the result is unsigned, the loop will not terminate.
Change it to a signed int so the loop conditional works for
negative values.

This fixes the following soft lockup:

[38573.102007] BUG: soft lockup - CPU#0 stuck for 61s! [phy0:2230]
[38573.102007] Modules linked in: aes_i586 aes_generic fuse af_packet ipt_REJECT xt_tcpudp nf_conntrack_ipv4 nf_defrag_ipv4 xt_state iptable_filter ip_tables x_tables acpi_cpufreq binfmt_misc dm_mirror dm_region_hash dm_log dm_multipath dm_mod kvm_intel kvm uinput i915 arc4 ecb drm snd_hda_codec_idt ath5k snd_hda_intel hid_apple mac80211 usbhid appletouch snd_hda_codec snd_pcm ath cfg80211 snd_timer i2c_algo_bit ohci1394 video snd processor ieee1394 rfkill ehci_hcd sg sky2 backlight snd_page_alloc uhci_hcd joydev output ac thermal button battery sr_mod applesmc cdrom input_polldev evdev unix [last unloaded: scsi_wait_scan]
[38573.102007] irq event stamp: 2547724535
[38573.102007] hardirqs last  enabled at (2547724534): [&lt;c1002ffc&gt;] restore_all_notrace+0x0/0x18
[38573.102007] hardirqs last disabled at (2547724535): [&lt;c10038f4&gt;] apic_timer_interrupt+0x28/0x34
[38573.102007] softirqs last  enabled at (92950144): [&lt;c103ab48&gt;] __do_softirq+0x108/0x210
[38573.102007] softirqs last disabled at (92950274): [&lt;c1348e74&gt;] _spin_lock_bh+0x14/0x80
[38573.102007]
[38573.102007] Pid: 2230, comm: phy0 Tainted: G        W  (2.6.31-rc7-wl #8) MacBook1,1
[38573.102007] EIP: 0060:[&lt;f8ea2d50&gt;] EFLAGS: 00010292 CPU: 0
[38573.102007] EIP is at cmp_ies+0x30/0x180 [cfg80211]
[38573.102007] EAX: 00000082 EBX: 00000000 ECX: ffffffc1 EDX: d8efd014
[38573.102007] ESI: ffffff7c EDI: 0000004d EBP: eee2dc50 ESP: eee2dc3c
[38573.102007]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
[38573.102007] CR0: 8005003b CR2: d8efd014 CR3: 01694000 CR4: 000026d0
[38573.102007] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
[38573.102007] DR6: ffff0ff0 DR7: 00000400
[38573.102007] Call Trace:
[38573.102007]  [&lt;f8ea2f8d&gt;] cmp_bss+0xed/0x100 [cfg80211]
[38573.102007]  [&lt;f8ea33e4&gt;] cfg80211_bss_update+0x84/0x410 [cfg80211]
[38573.102007]  [&lt;f8ea3884&gt;] cfg80211_inform_bss_frame+0x114/0x180 [cfg80211]
[38573.102007]  [&lt;f97255ff&gt;] ieee80211_bss_info_update+0x4f/0x180 [mac80211]
[38573.102007]  [&lt;f972b118&gt;] ieee80211_rx_bss_info+0x88/0xf0 [mac80211]
[38573.102007]  [&lt;f9739297&gt;] ? ieee802_11_parse_elems+0x27/0x30 [mac80211]
[38573.102007]  [&lt;f972b224&gt;] ieee80211_rx_mgmt_probe_resp+0xa4/0x1c0 [mac80211]
[38573.102007]  [&lt;f972bc59&gt;] ieee80211_sta_rx_queued_mgmt+0x919/0xc50 [mac80211]
[38573.102007]  [&lt;c1009707&gt;] ? sched_clock+0x27/0xa0
[38573.102007]  [&lt;c1009707&gt;] ? sched_clock+0x27/0xa0
[38573.102007]  [&lt;c105ffd0&gt;] ? mark_held_locks+0x60/0x80
[38573.102007]  [&lt;c1348be5&gt;] ? _spin_unlock_irqrestore+0x55/0x70
[38573.102007]  [&lt;c134baa5&gt;] ? sub_preempt_count+0x85/0xc0
[38573.102007]  [&lt;c1348bce&gt;] ? _spin_unlock_irqrestore+0x3e/0x70
[38573.102007]  [&lt;c12c1c0f&gt;] ? skb_dequeue+0x4f/0x70
[38573.102007]  [&lt;f972c021&gt;] ieee80211_sta_work+0x91/0xb80 [mac80211]
[38573.102007]  [&lt;c1009707&gt;] ? sched_clock+0x27/0xa0
[38573.102007]  [&lt;c134baa5&gt;] ? sub_preempt_count+0x85/0xc0
[38573.102007]  [&lt;c10479af&gt;] worker_thread+0x18f/0x320
[38573.102007]  [&lt;c104794e&gt;] ? worker_thread+0x12e/0x320
[38573.102007]  [&lt;c1348be5&gt;] ? _spin_unlock_irqrestore+0x55/0x70
[38573.102007]  [&lt;f972bf90&gt;] ? ieee80211_sta_work+0x0/0xb80 [mac80211]
[38573.102007]  [&lt;c104cbb0&gt;] ? autoremove_wake_function+0x0/0x50
[38573.102007]  [&lt;c1047820&gt;] ? worker_thread+0x0/0x320
[38573.102007]  [&lt;c104c854&gt;] kthread+0x84/0x90
[38573.102007]  [&lt;c104c7d0&gt;] ? kthread+0x0/0x90
[38573.102007]  [&lt;c1003ab7&gt;] kernel_thread_helper+0x7/0x10

Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit fcc6cb0c13555e78c2d47257b6d1b5e59b0c419a upstream.

The find_ie() function uses a size_t for the len parameter, and
directly uses len as a loop variable.  If any received packets
are malformed, it is possible for the decrease of len to overflow,
and since the result is unsigned, the loop will not terminate.
Change it to a signed int so the loop conditional works for
negative values.

This fixes the following soft lockup:

[38573.102007] BUG: soft lockup - CPU#0 stuck for 61s! [phy0:2230]
[38573.102007] Modules linked in: aes_i586 aes_generic fuse af_packet ipt_REJECT xt_tcpudp nf_conntrack_ipv4 nf_defrag_ipv4 xt_state iptable_filter ip_tables x_tables acpi_cpufreq binfmt_misc dm_mirror dm_region_hash dm_log dm_multipath dm_mod kvm_intel kvm uinput i915 arc4 ecb drm snd_hda_codec_idt ath5k snd_hda_intel hid_apple mac80211 usbhid appletouch snd_hda_codec snd_pcm ath cfg80211 snd_timer i2c_algo_bit ohci1394 video snd processor ieee1394 rfkill ehci_hcd sg sky2 backlight snd_page_alloc uhci_hcd joydev output ac thermal button battery sr_mod applesmc cdrom input_polldev evdev unix [last unloaded: scsi_wait_scan]
[38573.102007] irq event stamp: 2547724535
[38573.102007] hardirqs last  enabled at (2547724534): [&lt;c1002ffc&gt;] restore_all_notrace+0x0/0x18
[38573.102007] hardirqs last disabled at (2547724535): [&lt;c10038f4&gt;] apic_timer_interrupt+0x28/0x34
[38573.102007] softirqs last  enabled at (92950144): [&lt;c103ab48&gt;] __do_softirq+0x108/0x210
[38573.102007] softirqs last disabled at (92950274): [&lt;c1348e74&gt;] _spin_lock_bh+0x14/0x80
[38573.102007]
[38573.102007] Pid: 2230, comm: phy0 Tainted: G        W  (2.6.31-rc7-wl #8) MacBook1,1
[38573.102007] EIP: 0060:[&lt;f8ea2d50&gt;] EFLAGS: 00010292 CPU: 0
[38573.102007] EIP is at cmp_ies+0x30/0x180 [cfg80211]
[38573.102007] EAX: 00000082 EBX: 00000000 ECX: ffffffc1 EDX: d8efd014
[38573.102007] ESI: ffffff7c EDI: 0000004d EBP: eee2dc50 ESP: eee2dc3c
[38573.102007]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
[38573.102007] CR0: 8005003b CR2: d8efd014 CR3: 01694000 CR4: 000026d0
[38573.102007] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
[38573.102007] DR6: ffff0ff0 DR7: 00000400
[38573.102007] Call Trace:
[38573.102007]  [&lt;f8ea2f8d&gt;] cmp_bss+0xed/0x100 [cfg80211]
[38573.102007]  [&lt;f8ea33e4&gt;] cfg80211_bss_update+0x84/0x410 [cfg80211]
[38573.102007]  [&lt;f8ea3884&gt;] cfg80211_inform_bss_frame+0x114/0x180 [cfg80211]
[38573.102007]  [&lt;f97255ff&gt;] ieee80211_bss_info_update+0x4f/0x180 [mac80211]
[38573.102007]  [&lt;f972b118&gt;] ieee80211_rx_bss_info+0x88/0xf0 [mac80211]
[38573.102007]  [&lt;f9739297&gt;] ? ieee802_11_parse_elems+0x27/0x30 [mac80211]
[38573.102007]  [&lt;f972b224&gt;] ieee80211_rx_mgmt_probe_resp+0xa4/0x1c0 [mac80211]
[38573.102007]  [&lt;f972bc59&gt;] ieee80211_sta_rx_queued_mgmt+0x919/0xc50 [mac80211]
[38573.102007]  [&lt;c1009707&gt;] ? sched_clock+0x27/0xa0
[38573.102007]  [&lt;c1009707&gt;] ? sched_clock+0x27/0xa0
[38573.102007]  [&lt;c105ffd0&gt;] ? mark_held_locks+0x60/0x80
[38573.102007]  [&lt;c1348be5&gt;] ? _spin_unlock_irqrestore+0x55/0x70
[38573.102007]  [&lt;c134baa5&gt;] ? sub_preempt_count+0x85/0xc0
[38573.102007]  [&lt;c1348bce&gt;] ? _spin_unlock_irqrestore+0x3e/0x70
[38573.102007]  [&lt;c12c1c0f&gt;] ? skb_dequeue+0x4f/0x70
[38573.102007]  [&lt;f972c021&gt;] ieee80211_sta_work+0x91/0xb80 [mac80211]
[38573.102007]  [&lt;c1009707&gt;] ? sched_clock+0x27/0xa0
[38573.102007]  [&lt;c134baa5&gt;] ? sub_preempt_count+0x85/0xc0
[38573.102007]  [&lt;c10479af&gt;] worker_thread+0x18f/0x320
[38573.102007]  [&lt;c104794e&gt;] ? worker_thread+0x12e/0x320
[38573.102007]  [&lt;c1348be5&gt;] ? _spin_unlock_irqrestore+0x55/0x70
[38573.102007]  [&lt;f972bf90&gt;] ? ieee80211_sta_work+0x0/0xb80 [mac80211]
[38573.102007]  [&lt;c104cbb0&gt;] ? autoremove_wake_function+0x0/0x50
[38573.102007]  [&lt;c1047820&gt;] ? worker_thread+0x0/0x320
[38573.102007]  [&lt;c104c854&gt;] kthread+0x84/0x90
[38573.102007]  [&lt;c104c7d0&gt;] ? kthread+0x0/0x90
[38573.102007]  [&lt;c1003ab7&gt;] kernel_thread_helper+0x7/0x10

Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: John W. Linville &lt;linville@tuxdriver.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>net: net_assign_generic() fix</title>
<updated>2009-09-15T17:45:16+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2009-07-28T02:36:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=461eca1d34f0fa01887019a4d3ba39d145b8c799'/>
<id>461eca1d34f0fa01887019a4d3ba39d145b8c799</id>
<content type='text'>
[ Upstream commit 144586301f6af5ae5943a002f030d8c626fa4fdd ]

memcpy() should take into account size of pointers,
not only number of pointers to copy.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Acked-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 144586301f6af5ae5943a002f030d8c626fa4fdd ]

memcpy() should take into account size of pointers,
not only number of pointers to copy.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Acked-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gre: Fix MTU calculation for bound GRE tunnels</title>
<updated>2009-09-15T17:45:12+00:00</updated>
<author>
<name>Tom Goff</name>
<email>thomas.goff@boeing.com</email>
</author>
<published>2009-08-14T23:33:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=f94cae4285c03f8060daaabd77809793924c6100'/>
<id>f94cae4285c03f8060daaabd77809793924c6100</id>
<content type='text'>
[ Upstream commit 8cdb045632e5ee22854538619ac6f150eb0a4894 ]

The GRE header length should be subtracted when the tunnel MTU is
calculated.  This just corrects for the associativity change
introduced by commit 42aa916265d740d66ac1f17290366e9494c884c2
("gre: Move MTU setting out of ipgre_tunnel_bind_dev").

Signed-off-by: Tom Goff &lt;thomas.goff@boeing.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 8cdb045632e5ee22854538619ac6f150eb0a4894 ]

The GRE header length should be subtracted when the tunnel MTU is
calculated.  This just corrects for the associativity change
introduced by commit 42aa916265d740d66ac1f17290366e9494c884c2
("gre: Move MTU setting out of ipgre_tunnel_bind_dev").

Signed-off-by: Tom Goff &lt;thomas.goff@boeing.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dccp: missing destroy of percpu counter variable while unload module</title>
<updated>2009-09-15T17:45:05+00:00</updated>
<author>
<name>Wei Yongjun</name>
<email>yjwei@cn.fujitsu.com</email>
</author>
<published>2009-08-04T21:44:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=64a0893c7619a93077de2d32260d5597affafd23'/>
<id>64a0893c7619a93077de2d32260d5597affafd23</id>
<content type='text'>
[ Upstream commit 476181cb05c6a3aea3ef42309388e255c934a06f ]

percpu counter dccp_orphan_count is init in dccp_init() by
percpu_counter_init() while dccp module is loaded, but the
destroy of it is missing while dccp module is unloaded. We
can get the kernel WARNING about this. Reproduct by the
following commands:

  $ modprobe dccp
  $ rmmod dccp
  $ modprobe dccp

WARNING: at lib/list_debug.c:26 __list_add+0x27/0x5c()
Hardware name: VMware Virtual Platform
list_add corruption. next-&gt;prev should be prev (c080c0c4), but was (null). (next
=ca7188cc).
Modules linked in: dccp(+) nfsd lockd nfs_acl auth_rpcgss exportfs sunrpc
Pid: 1956, comm: modprobe Not tainted 2.6.31-rc5 #55
Call Trace:
 [&lt;c042f8fa&gt;] warn_slowpath_common+0x6a/0x81
 [&lt;c053a6cb&gt;] ? __list_add+0x27/0x5c
 [&lt;c042f94f&gt;] warn_slowpath_fmt+0x29/0x2c
 [&lt;c053a6cb&gt;] __list_add+0x27/0x5c
 [&lt;c053c9b3&gt;] __percpu_counter_init+0x4d/0x5d
 [&lt;ca9c90c7&gt;] dccp_init+0x19/0x2ed [dccp]
 [&lt;c0401141&gt;] do_one_initcall+0x4f/0x111
 [&lt;ca9c90ae&gt;] ? dccp_init+0x0/0x2ed [dccp]
 [&lt;c06971b5&gt;] ? notifier_call_chain+0x26/0x48
 [&lt;c0444943&gt;] ? __blocking_notifier_call_chain+0x45/0x51
 [&lt;c04516f7&gt;] sys_init_module+0xac/0x1bd
 [&lt;c04028e4&gt;] sysenter_do_call+0x12/0x22

Signed-off-by: Wei Yongjun &lt;yjwei@cn.fujitsu.com&gt;
Acked-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 476181cb05c6a3aea3ef42309388e255c934a06f ]

percpu counter dccp_orphan_count is init in dccp_init() by
percpu_counter_init() while dccp module is loaded, but the
destroy of it is missing while dccp module is unloaded. We
can get the kernel WARNING about this. Reproduct by the
following commands:

  $ modprobe dccp
  $ rmmod dccp
  $ modprobe dccp

WARNING: at lib/list_debug.c:26 __list_add+0x27/0x5c()
Hardware name: VMware Virtual Platform
list_add corruption. next-&gt;prev should be prev (c080c0c4), but was (null). (next
=ca7188cc).
Modules linked in: dccp(+) nfsd lockd nfs_acl auth_rpcgss exportfs sunrpc
Pid: 1956, comm: modprobe Not tainted 2.6.31-rc5 #55
Call Trace:
 [&lt;c042f8fa&gt;] warn_slowpath_common+0x6a/0x81
 [&lt;c053a6cb&gt;] ? __list_add+0x27/0x5c
 [&lt;c042f94f&gt;] warn_slowpath_fmt+0x29/0x2c
 [&lt;c053a6cb&gt;] __list_add+0x27/0x5c
 [&lt;c053c9b3&gt;] __percpu_counter_init+0x4d/0x5d
 [&lt;ca9c90c7&gt;] dccp_init+0x19/0x2ed [dccp]
 [&lt;c0401141&gt;] do_one_initcall+0x4f/0x111
 [&lt;ca9c90ae&gt;] ? dccp_init+0x0/0x2ed [dccp]
 [&lt;c06971b5&gt;] ? notifier_call_chain+0x26/0x48
 [&lt;c0444943&gt;] ? __blocking_notifier_call_chain+0x45/0x51
 [&lt;c04516f7&gt;] sys_init_module+0xac/0x1bd
 [&lt;c04028e4&gt;] sysenter_do_call+0x12/0x22

Signed-off-by: Wei Yongjun &lt;yjwei@cn.fujitsu.com&gt;
Acked-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
</feed>
