Re: [patch 1/9] bonding: lockdep annotation

2006-11-12 Thread Jeff Garzik

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

2006-11-12 Thread David Miller
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

2006-11-10 Thread Jeff Garzik

[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

2006-11-10 Thread David Miller
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

2006-11-09 Thread David Miller
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

2006-11-08 Thread akpm
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

2006-10-20 Thread akpm
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