]> git.baikalelectronics.ru Git - kernel.git/commit
bonding: Fix locking in 802.3ad mode
authorJay Vosburgh <fubar@us.ibm.com>
Sat, 22 Mar 2008 05:29:33 +0000 (22:29 -0700)
committerJeff Garzik <jeff@garzik.org>
Wed, 26 Mar 2008 03:15:38 +0000 (23:15 -0400)
commit89c729361a5704310617d5ff9b768116acdbe276
tree243fab364159920c950e393194c0ba8421a15d05
parentee58f4163a5bf4fd0845516313ad30fb037dc3ea
bonding: Fix locking in 802.3ad mode

The 802.3ad state machine lock can be acquired in both softirq and
not softirq context, but was not held at _bh to prevent a deadlock (which
could occur if a LACPDU arrived and was processed while the lock was
held).

Corrected this, now hold the state machine lock at _bh to prevent
deadlock.

Bug reported by Todd Fleisher <todd@fleish.org>.

Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/bonding/bond_3ad.c