Re: [patch 1/9] bonding: lockdep annotation
David Miller wrote: From: Jeff Garzik [EMAIL PROTECTED] Date: Fri, 10 Nov 2006 11:09:25 -0500 [EMAIL PROTECTED] wrote: From: Peter Zijlstra [EMAIL PROTECTED] = [ INFO: possible recursive locking detected ] 2.6.17-1.2600.fc6 #1 - applied; please CC me on this drivers/net stuff Jeff, I put this one in my net-2.6.20 tree already. Well, it was drivers/net/bonding/* which usually goes in through my tree, what did you expect? :) Jeff - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [patch 1/9] bonding: lockdep annotation
From: Jeff Garzik [EMAIL PROTECTED] Date: Sun, 12 Nov 2006 11:40:02 -0500 David Miller wrote: Jeff, I put this one in my net-2.6.20 tree already. Well, it was drivers/net/bonding/* which usually goes in through my tree, what did you expect? :) It's not problem, it will all come out in the wash :) - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [patch 1/9] bonding: lockdep annotation
[EMAIL PROTECTED] wrote: From: Peter Zijlstra [EMAIL PROTECTED] = [ INFO: possible recursive locking detected ] 2.6.17-1.2600.fc6 #1 - applied; please CC me on this drivers/net stuff - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [patch 1/9] bonding: lockdep annotation
From: Jeff Garzik [EMAIL PROTECTED] Date: Fri, 10 Nov 2006 11:09:25 -0500 [EMAIL PROTECTED] wrote: From: Peter Zijlstra [EMAIL PROTECTED] = [ INFO: possible recursive locking detected ] 2.6.17-1.2600.fc6 #1 - applied; please CC me on this drivers/net stuff Jeff, I put this one in my net-2.6.20 tree already. - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [patch 1/9] bonding: lockdep annotation
From: [EMAIL PROTECTED] Date: Wed, 08 Nov 2006 19:51:01 -0800 The bonding driver nests other drivers, give the bonding driver its own lock class. Signed-off-by: Peter Zijlstra [EMAIL PROTECTED] Acked-by: Ingo Molnar [EMAIL PROTECTED] Cc: Stephen Hemminger [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Applied, thanks Peter. - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
[patch 1/9] bonding: lockdep annotation
From: Peter Zijlstra [EMAIL PROTECTED] = [ INFO: possible recursive locking detected ] 2.6.17-1.2600.fc6 #1 - ifconfig/2411 is trying to acquire lock: (dev-_xmit_lock){-...}, at: [80429b9f] dev_mc_add+0x45/0x15f but task is already holding lock: (dev-_xmit_lock){-...}, at: [80429b9f] dev_mc_add+0x45/0x15f other info that might help us debug this: 3 locks held by ifconfig/2411: #0: (rtnl_mutex){--..}, at: [802664af] mutex_lock+0x2a/0x2e #1: (dev-_xmit_lock){-...}, at: [80429b9f] dev_mc_add+0x45/0x15f #2: (bond-lock){-.-+}, at: [8831b7f7] bond_set_multicast_list+0x2c/0x26a [bonding] stack backtrace: Call Trace: [8026e97d] show_trace+0xae/0x319 [8026ebfd] dump_stack+0x15/0x17 [802a839b] __lock_acquire+0x135/0xa64 [802a926d] lock_acquire+0x4b/0x69 [80267981] _spin_lock_bh+0x2a/0x36 [80429b9f] dev_mc_add+0x45/0x15f [8831b903] :bonding:bond_set_multicast_list+0x138/0x26a [80429901] __dev_mc_upload+0x22/0x24 [80429c74] dev_mc_add+0x11a/0x15f [8045d154] igmp_group_added+0x55/0x10f [8045d4ab] ip_mc_inc_group+0x1d6/0x21a [8045d535] ip_mc_up+0x46/0x61 [804594b8] inetdev_init+0x11c/0x136 [8045a0b7] devinet_ioctl+0x3eb/0x5e9 [8045a56c] inet_ioctl+0x71/0x8f [8041ed74] sock_ioctl+0x1e8/0x20a [80243ae0] do_ioctl+0x2a/0x77 [802325cc] vfs_ioctl+0x25a/0x277 [8024ea4b] sys_ioctl+0x5f/0x82 [8026060e] system_call+0x7e/0x83 The bonding driver nests other drivers, give the bonding driver its own lock class. Signed-off-by: Peter Zijlstra [EMAIL PROTECTED] Acked-by: Ingo Molnar [EMAIL PROTECTED] Cc: Stephen Hemminger [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] --- drivers/net/bonding/bond_main.c |5 + 1 file changed, 5 insertions(+) diff -puN drivers/net/bonding/bond_main.c~bonding-lockdep-annotation drivers/net/bonding/bond_main.c --- a/drivers/net/bonding/bond_main.c~bonding-lockdep-annotation +++ a/drivers/net/bonding/bond_main.c @@ -4692,6 +4692,8 @@ static int bond_check_params(struct bond return 0; } +static struct lock_class_key bonding_netdev_xmit_lock_key; + /* Create a new bond based on the specified name and bonding parameters. * Caller must NOT hold rtnl_lock; we need to release it here before we * set up our sysfs entries. @@ -4727,6 +4729,9 @@ int bond_create(char *name, struct bond_ if (res 0) { goto out_bond; } + + lockdep_set_class(bond_dev-_xmit_lock, bonding_netdev_xmit_lock_key); + if (newbond) *newbond = bond_dev-priv; _ - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
[patch 1/9] bonding: lockdep annotation
From: Peter Zijlstra [EMAIL PROTECTED] = [ INFO: possible recursive locking detected ] 2.6.17-1.2600.fc6 #1 - ifconfig/2411 is trying to acquire lock: (dev-_xmit_lock){-...}, at: [80429b9f] dev_mc_add+0x45/0x15f but task is already holding lock: (dev-_xmit_lock){-...}, at: [80429b9f] dev_mc_add+0x45/0x15f other info that might help us debug this: 3 locks held by ifconfig/2411: #0: (rtnl_mutex){--..}, at: [802664af] mutex_lock+0x2a/0x2e #1: (dev-_xmit_lock){-...}, at: [80429b9f] dev_mc_add+0x45/0x15f #2: (bond-lock){-.-+}, at: [8831b7f7] bond_set_multicast_list+0x2c/0x26a [bonding] stack backtrace: Call Trace: [8026e97d] show_trace+0xae/0x319 [8026ebfd] dump_stack+0x15/0x17 [802a839b] __lock_acquire+0x135/0xa64 [802a926d] lock_acquire+0x4b/0x69 [80267981] _spin_lock_bh+0x2a/0x36 [80429b9f] dev_mc_add+0x45/0x15f [8831b903] :bonding:bond_set_multicast_list+0x138/0x26a [80429901] __dev_mc_upload+0x22/0x24 [80429c74] dev_mc_add+0x11a/0x15f [8045d154] igmp_group_added+0x55/0x10f [8045d4ab] ip_mc_inc_group+0x1d6/0x21a [8045d535] ip_mc_up+0x46/0x61 [804594b8] inetdev_init+0x11c/0x136 [8045a0b7] devinet_ioctl+0x3eb/0x5e9 [8045a56c] inet_ioctl+0x71/0x8f [8041ed74] sock_ioctl+0x1e8/0x20a [80243ae0] do_ioctl+0x2a/0x77 [802325cc] vfs_ioctl+0x25a/0x277 [8024ea4b] sys_ioctl+0x5f/0x82 [8026060e] system_call+0x7e/0x83 The bonding driver nests other drivers, give the bonding driver its own lock class. Signed-off-by: Peter Zijlstra [EMAIL PROTECTED] Acked-by: Ingo Molnar [EMAIL PROTECTED] Cc: Stephen Hemminger [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] --- drivers/net/bonding/bond_main.c |5 + 1 files changed, 5 insertions(+) diff -puN drivers/net/bonding/bond_main.c~bonding-lockdep-annotation drivers/net/bonding/bond_main.c --- a/drivers/net/bonding/bond_main.c~bonding-lockdep-annotation +++ a/drivers/net/bonding/bond_main.c @@ -4692,6 +4692,8 @@ static int bond_check_params(struct bond return 0; } +static struct lock_class_key bonding_netdev_xmit_lock_key; + /* Create a new bond based on the specified name and bonding parameters. * Caller must NOT hold rtnl_lock; we need to release it here before we * set up our sysfs entries. @@ -4727,6 +4729,9 @@ int bond_create(char *name, struct bond_ if (res 0) { goto out_bond; } + + lockdep_set_class(bond_dev-_xmit_lock, bonding_netdev_xmit_lock_key); + if (newbond) *newbond = bond_dev-priv; _ - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html