Date: Sun, 24 Jul 2005 19:35:16 GMT From: Rui Paulo <rpaulo@NetBSD.org> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/84014: xl(4) lock held Message-ID: <200507241935.j6OJZGXW076702@www.freebsd.org> Resent-Message-ID: <200507241940.j6OJeG36063650@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 84014 >Category: kern >Synopsis: xl(4) lock held >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jul 24 19:40:16 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Rui Paulo >Release: FreeBSD 7.0-CURRENT i386 >Organization: >Environment: System: FreeBSD quanta.internal.fnop.net 7.0-CURRENT FreeBSD 7.0-CURRENT #3: Sun Jul 24 02:35:06 WEST 2005 rpaulo@quanta:/usr/obj/usr/src/sys/GENERIC i386 if_xl.c revision 1.191 >Description: I get the following panic on system bootup: taskqueue_drain with the following non-sleepable locks held: exclusive sleep mutex xl0 (network driver) r = 0 (0xc135e0a4) locked @ /usr/src/sys/pci/if_xl.c:2798 KDB: stack backtrace: kdb_backtrace(1,c135e0c8,c135c000,c1265c00,c7224904) at kdb_backtrace+0x29 witness_warn(5,0,c08599d8,c135c000,c135c000) at witness_warn+0x18e taskqueue_drain(c1265c00,c135e0c8,c135e0a4,1,c086ce7d,cc9) at taskqueue_drain+0x1a xl_stop(c135c000,c135e0a4,1,c086ce7d,afb) at xl_stop+0x44 xl_init_locked(c135c000,c135e0a4,0,c086ce7d,aee) at xl_init_locked+0x33 xl_init(c135c000) at xl_init+0x26 ether_ioctl(c1348400,8020690c,c1443400,0,1) at ether_ioctl+0x64 xl_ioctl(c1348400,8020690c,c1443400,0,c1443400) at xl_ioctl+0x2be in6_ifinit(c1348400,c1443400,c7224b1c,1,40) at in6_ifinit+0x90 in6_update_ifa(c1348400,c7224b0c,0) at in6_update_ifa+0x456 in6_ifattach_linklocal(c1348400,0) at in6_ifattach_linklocal+0xe5 in6_ifattach(c1348400,0,c135f400,0,0) at in6_ifattach+0xb9 in6_if_up(c1348400,c1348400,80206910,c13f68c0,0) at in6_if_up+0x13 if_route(c1348400,1,0,c7224c4c,c069740f) at if_route+0x55 if_up(c1348400) at if_up+0xf ifhwioctl(80206910,c1348400,c13f68c0,c1334a80,c06438ff) at ifhwioctl+0x29b ifioctl(c1460000,80206910,c13f68c0,c1334a80,0) at ifioctl+0xc3 soo_ioctl(c14161b0,80206910,c13f68c0,c1265100,c1334a80) at soo_ioctl+0x2db ioctl(c1334a80,c7224d04,3,6,247) at ioctl+0x370 syscall(3b,3b,3b,4,1) at syscall+0x22f Xint0x80_syscall() at Xint0x80_syscall+0x1f --- syscall (54, FreeBSD ELF32, ioctl), eip = 0x280c6287, esp = 0xbfbfe56c, ebp = 0xbfbfe5b8 --- I think the bug was introduced in revision 1.191: revision 1.191 date: 2005/07/13 14:06:13; author: glebius; state: Exp; lines: +2 -0 NET_LOCK_GIANT() when entering network code. Pointy hat to: glebius Reported by: rodrigc It worked fine during RELENG_6 freeze, IIRC. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200507241935.j6OJZGXW076702>