Messages in this thread Patch in this message | | | From | Andrey Borzenkov <> | Subject | [PATCH][2.6.25-rc2] Fix double lock in do_setlink introduced by 45b503548210fe6f23e92b856421c2a3f05fd034 | Date | Sun, 17 Feb 2008 02:57:25 +0300 |
| |
[ 58.097923] ============================================= [ 58.098883] [ INFO: possible recursive locking detected ] [ 58.099603] 2.6.25-rc2-1avb #1 [ 58.100013] --------------------------------------------- [ 58.100672] wpa_supplicant/2682 is trying to acquire lock: [ 58.100672] (dev_base_lock){-.--}, at: [<c0278697>] do_setlink+0x327/0x3 [ 58.100672] [ 58.100672] but task is already holding lock: [ 58.100672] (dev_base_lock){-.--}, at: [<c0278680>] do_setlink+0x310/0x3
with final effect
[ 58.537509] Kernel panic - not syncing: Aiee, killing interrupt handler!
Signed-off-by: Andrey Borzenkov <arvidjaar@mail.ru>
---
net/core/rtnetlink.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c index ecb02af..dd9e4da 100644 --- a/net/core/rtnetlink.c +++ b/net/core/rtnetlink.c @@ -853,7 +853,7 @@ static int do_setlink(struct net_device *dev, struct ifinfomsg *ifm, if (dev->link_mode != nla_get_u8(tb[IFLA_LINKMODE])) { write_lock_bh(&dev_base_lock); dev->link_mode = nla_get_u8(tb[IFLA_LINKMODE]); - write_lock_bh(&dev_base_lock); + write_unlock_bh(&dev_base_lock); modified = 1; } }[unhandled content-type:application/pgp-signature] | |