From: Dave Chinner <david@fromorbit.com>
To: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org
Subject: [BUG, NET] deadlock tearing down a bridged interface
Date: Fri, 18 Jul 2008 17:37:24 +1000 [thread overview]
Message-ID: <20080718073724.GA5802@disturbed> (raw)
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.
Unfortunately, a UML session (2.6.25-rc9) was halting at the same
time, and instead of giving me a 'device busy' error, the
UML session stopped at:
Asking all remaining processes to terminate...done.
All processes ended within 1 seconds....done.
Saving random seed...done.
Deconfiguring network interfaces...
It appears to be stuck closing the tunnel interface it was using:
uml-linux D ffffffff804297c0 0 7437 7428
ffff8100798efe70 0000000000000086 0000000000000000 ffff81005348b400
ffff81003d820800 ffff81007df9a800 ffff81003d820a50 0000000100000000
00000000ffffffff ffff81003d820800 0000000000000000 0000000000000000
Call Trace:
[<ffffffff8024a85d>] lock_hrtimer_base+0x1b/0x3c
[<ffffffff804145f2>] __mutex_lock_slowpath+0x68/0xa3
[<ffffffff80414458>] mutex_lock+0xa/0xb
[<ffffffff803adcfe>] netdev_run_todo+0x14/0x21a
[<ffffffff885901dd>] :tun:tun_chr_close+0x70/0x76
[<ffffffff802990c7>] __fput+0xa1/0x16c
[<ffffffff802968f3>] filp_close+0x5d/0x65
[<ffffffff80297aca>] sys_close+0x8d/0xca
[<ffffffff8020be2e>] system_call+0x7e/0x83
At the same time that this command was running:
brctl delbr br0
dmesg showed:
unregister_netdevice: waiting for br0 to become free. Usage count = 7
unregister_netdevice: waiting for br0 to become free. Usage count = 7
unregister_netdevice: waiting for br0 to become free. Usage count = 7
unregister_netdevice: waiting for br0 to become free. Usage count = 7
unregister_netdevice: waiting for br0 to become free. Usage count = 7
unregister_netdevice: waiting for br0 to become free. Usage count = 7
....
brctl is stuck here:
brctl D ffffffff804297c0 0 8457 8448
ffff81004d8a3d98 0000000000000082 0000000000000286 ffffffff8023e0ea
ffff81000f941800 ffff81007d531000 ffff81000f941a50 000000014d8a3da8
000000012f98b3a2 000000012f98bbea 0000000000000286 ffffffff8023e280
Call Trace:
[<ffffffff8023e0ea>] lock_timer_base+0x26/0x4c
[<ffffffff8023e280>] __mod_timer+0xc3/0xd1
[<ffffffff8041423d>] schedule_timeout+0x8a/0xad
[<ffffffff8023ddde>] process_timeout+0x0/0x5
[<ffffffff80414238>] schedule_timeout+0x85/0xad
[<ffffffff8023e2a2>] msleep+0x14/0x1e
[<ffffffff803ade06>] netdev_run_todo+0x11c/0x21a
[<ffffffff88580599>] :bridge:br_del_bridge+0x4c/0x50
[<ffffffff88581281>] :bridge:br_ioctl_deviceless_stub+0x177/0x1e2
[<ffffffff80223598>] do_page_fault+0x352/0x6ca
[<ffffffff803a0ab6>] sock_ioctl+0x12c/0x200
[<ffffffff802a3849>] do_ioctl+0x21/0x6b
[<ffffffff802a3ad6>] vfs_ioctl+0x243/0x25c
[<ffffffff80296861>] fd_install+0x25/0x5a
[<ffffffff802a3b40>] sys_ioctl+0x51/0x71
[<ffffffff8020be2e>] system_call+0x7e/0x83
This is as much as I could get before sufficient stuff locked
up and I had to reboot.
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
next reply other threads:[~2008-07-18 7:37 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-18 7:37 Dave Chinner [this message]
2008-07-18 15:44 ` [BUG, NET] deadlock tearing down a bridged interface Ben Greear
2008-07-19 1:17 ` Dave Chinner
2008-07-19 17:01 ` Ben Greear
2008-07-20 6:04 ` [RFC] netdev: debugging option Stephen Hemminger
2008-07-20 7:05 ` David Miller
2008-08-04 16:37 ` Stephen Hemminger
2008-08-04 21:31 ` David Miller
2008-08-04 22:34 ` Stephen Hemminger
2008-07-20 6:07 ` [BUG, NET] deadlock tearing down a bridged interface Stephen Hemminger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080718073724.GA5802@disturbed \
--to=david@fromorbit.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).