kernel weekly news – 10.03.2012

Posted: March 10, 2012 in kernel


-James Bottomley updates parisc for -rc5, and also scsi,
Samuel Ortiz has mfd changes for 3.3, Ingo Molnar has
per fixes and Chris Ball has mmc fixes.

-Linus announces 3.3-rc6:

Hmm. Nothing much to say about this -rc: it really is all small fixes
and cleanups.

In fact, it’s been calm enough that this *might* be the last -rc, but
we’ll see how the upcoming week goes. If it stays calm (and hopefully
even calms down some more), there doesn’t seem to be any major reason
to drag out the release cycle any more.

But hey, that does imply that people who have seen regressions should
re-check them and holler loudly if they are still seeing problems.

So please test,


-Tejun Heo has percpu fixes for -rc6, David Miller has networking updates
(“1) TCP SACK processing can calculate an incorrect reordering value in
some cases, fix from Neal Cardwell.

2) tcp_mark_head_lost() can split SKBs in situations where it should
not, violating send queue invariants expected by other pieces of
code and thus resulting (eventually) in corrupted retransmit state
counters. Also from Neal Cardwell.

3) qla3xxx erroneously calls spin_lock_irqrestore() with constant
hw_flags of zero. Fix from Santosh Nayak.

4) Fix NULL deref in rt2x00, from Gabor Juhos.

5) pch_gbe passes address of wrong typed object to pch_gbe_validate_option
thus corrupting part of the value. From Dan Carpenter.

6) We must check the return value of nlmsg_parse() before trying to use
the results. From Eric Dumazet.

7) Bridging code fails to check return value of ipv6_dev_get_saddr() thus
potentially leaving uninitialized garbage in the outgoing ipv6 header.
From Ulrich Weber.

8) Due to rounding and a reversed operation on jiffies, bridge message
ages can go backwards instead of forwards, thus breaking STP. Fixes
from Joakim Tjernlund.

9) r8169 modifies Config* registers without properly holding the
Config9346 lock, resulting in corrupted IP fragments on some chips.
Fix from Francois Romieu.

10) NET_PACKET_ENGINE default wan’t set properly during the network
driver mega-move. Fix from Stephen Hemminger.

11) vmxnet3 uses TCP header size where it actually should use the UDP
header size, fix from Shreyas Bhatewara.

12) Netfilter bridge module autoload is busted in the compat case, fix from
Florian Westphal.

13) Wireless Key removal was not setting multicast bits correctly thus
accidently killing the unicast key 0 and thus all traffic stops.
Fix from Johannes Berg.

14) Fix endless retries of A-MPDU transmissions in brcm80211 driver.

“), Greg KH announces, plus some tty/serial and usb patches
for -rc6, Arnd Bergmann has arm-soc updates and David Miller has
networking updates:

1) TCP can chop up SACK’d SKBs below below the unacked send
sequence and that breaks lots of stuff. Fix from Neal Cardwell.

2) There is code in ipv6 to properly join and leave the all-routers
multicast code when the forwarding setting is changed, but once
forwarding is turned on, we don’t do the join for newly registered
devices. Fix from Li Wei.

3) Netfilter’s NAT module autoload in ctnetlink drops a spinlock around
a sleeping call, problem is this code path doesn’t actually hold that
lock. Fix from Pablo Neira Ayuso.

4) TG3 uses the wrong interfaces to hook into the new byte queue limit
support. It uses the device level interfaces, which is fine for
single queue devices, but on more recent chips this driver supports
multiqueue so we have to use the multiqueue BQL APIs. Fix from Tom

5) r8169 resume fix from Francois Romieu.

6) Add some cxgb4 device IDs, from Vipul Pandya.

-Dmitry Torokhov announces input updates for -rc6, Alasdair
Kergon has device-mapper updates for 3.3, and Gustavo Padovan
has bluetooth updates:

Here goes another try to merge the bluetooth-next changes. I looked to the
whole diff of the last pull request and fixed all the style issues you
reported in last pull request attempt. The diff is very big, so I may have
missed some places, but we are, from your coding style point of view, in a
much better state than before.

Please take a look on it and pull if you find the code suitable, otherwise
tell me what’s wrong and how we should fix it since your coding style rules
are not written in CodingStyle.

About the patches:
– almost half of the patches is in the new Bluetooth Management interface, it
finally reached a stable state regarding its API and we now enable it by
– lots of Bluetooth LE patches. This implementation is still unstable but
disabled by default.
– some L2CAP layer refactoring to make our core code more generic and
– New HCI monitor interface to monitor Bluetooth flow.
– Lot of fixes and clean ups all over the Bluetooth subsystem.

-David Miller has networking updates, and quite a lot of them:

1) IPV4 routing metrics can become stale when routes are changed
by the administrator, fix from Steffen Klassert.

2) atl1c does “val |= XXX;” where XXX is a bit number not a bit mask,
fix by using set_bit. From Dan Carpenter.

3) Memory accounting bug in carl9170 driver results in wedged TX
queue. Fix from Nicolas Cavallari.

4) iwlwifi accidently uses “sizeof(ptr)” instead of “sizeof(*ptr)”,
fix from Johannes Berg.

5) Openvswitch doesn’t honor dp_ifindex when doing vport lookups, fix
from Ben Pfaff.

6) ehea conversion to 64-bit stats lost multicast and rx_errors
accounting, fix from Eric Dumazet.

7) Bridge state transition logging in br_stp_disable_port() is busted,
it’s emitted at the wrong time and the message is in the wrong tense,
fix from Paulius Zaleckas.

8) mlx4 device erroneously invokes the queue resize firmware operation
twice, fix from Jack Morgenstein.

9) Fix deadlock in usbnet, need to drop lock when invoking usb_unlink_urb()
otherwise we recurse into taking it again. Fix from Sebastian Siewior.

10) hyperv network driver uses the wrong driver name string, fix from
Haiyang Zhang.

-That’s it for this week.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s