Backport of upstream commit:
fd0e435b0fe85622f167b84432552885a4856ac8 bonding: Incorrect TX queue offset
By default bonding only allocates 16 queues. This patch will prevent devices that have more than 16 receive queues (82599 has 128) from blowing out the tx queue index for the bonding device.
For proper queue allocation, in the bonding driver and down to the devices, they should probably add the following line to one of the files in /etc/modprobe.d/
options bonding tx_queues=N
where N>= number of processors that show up in /proc/cpuinfo.
This issue did not affect the versions of Linux kernel as shipped with Red Hat Enterprise Linux 4, 5, and Red Hat Enterprise MRG as they did not backport the upstream commit bb1d9123 that introduced this issue. A future kernel update in Red Hat Enterprise Linux 6 may address this flaw.
This issue has been addressed in following products:
Red Hat Enterprise Linux 6
Via RHSA-2011:0542 https://rhn.redhat.com/errata/RHSA-2011-0542.html