Messages in this thread | | | Date | Sat, 19 Jul 2008 11:17:09 +1000 | From | Dave Chinner <> | Subject | Re: [BUG, NET] deadlock tearing down a bridged interface |
| |
On Fri, Jul 18, 2008 at 08:44:58AM -0700, Ben Greear wrote: > Dave Chinner wrote: >> Folks, >> >> I just deadlocked networking on a 2.6.24 kernel. Basically I >> was trying to restart the bridge interface I use for UML sessions >> because it wasn't passing packets. This happens occasionally >> when I leave a UML session too long in gdb, so I bounced the >> bridge to get it working again. >> > We have been chasing a refcount bug in 2.6.25 that only happens when > IPv6 module is loaded.
Which causes what problem? The deadlock I reported or the bridge occasionally hanging? Is that a problem in 2.6.24?
The deadlock is the one I'm concerned about - it appears that netdev_run_todo() can only wait on a single interface at a time, so if we are tearing down two interfaces concurrently where one has a reference on the other a deadlock is just waiting to happen...
> If you are not actually using ipv6, try removing it's > module from your /lib/modules/* directory and see if that fixes your > problem.
I'll try it, but a) it's not 2.6.25 and b) I don't tend to triage problems on my main workstation so I'm not likely to try to reproduce this deadlock unless absolutely necessary.
Cheers,
Dave. -- Dave Chinner david@fromorbit.com
| |