SB-2 2014-08-08 Debian kernel 3.2.60-1+deb7u1¶
Service bulletin: SB-2 Date: August 8, 2014
Between July 4 and July 20, 2014, the Linux kernel packages available from Debian contained a bug that can significantly impact network performance, especially bulk uploads. The broken kernel version is 3.2.60-1+deb7u1, and the fixed version is 3.2.60-1+deb7u2. The deb7u1 kernel fails to correctly handle packets with the Don’t Fragment bit set when generic receive offload is enabled on an interface. This results in DF packets being dropped instead of forwarded. The most common symptom is that download traffic works fine, while upload traffic stalls some or all of the time.
Affected hosts¶
- Aggregators and bonders imaged or upgraded between July 4 and July 20, 2014
- All architectures
- Debian Wheezy only; Debian Squeeze nodes are not affected even if they were upgraded between July 4 and July 20
Solution¶
To fix the issue, upgrade the kernel using the regular apt update method, followed by a reboot:
apt-get update
apt-get upgrade
reboot
If a site with the deb7u1 kernel is not experiencing issues, you might consider delaying the kernel upgrade until the next time Bonded Internet is upgraded on the node. You can see the installed kernel version of a bonder or aggregator by visiting its Node Details page.
Workaround¶
You can work around the issue temporarily by disabling the “generic receive offload” feature on a bonder, with this command:
ethtool -K <interface of connected IP> gro off
For example, if the bonder has a connected IP on interface eth0, you would run:
ethtool -K eth0 gro off
This change is reset when the bonder reboots.
References¶
- Debian bug report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=754173
- Debian Wheezy kernel changelog: visit https://packages.debian.org/wheezy/linux-image-3.2.0-4-amd64, then click the link “Debian Changelog” (the link changes from time to time as the stable kernel version is updated)