From owner-freebsd-current@FreeBSD.ORG Wed Jul 1 16:48:18 2009 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2D137106564A for ; Wed, 1 Jul 2009 16:48:18 +0000 (UTC) (envelope-from danfe@regency.nsu.ru) Received: from mx.nsu.ru (mx.nsu.ru [212.192.164.5]) by mx1.freebsd.org (Postfix) with ESMTP id 895848FC08 for ; Wed, 1 Jul 2009 16:48:17 +0000 (UTC) (envelope-from danfe@regency.nsu.ru) Received: from regency.nsu.ru ([193.124.210.26]) by mx.nsu.ru with esmtp (Exim 4.50) id 1MM2XU-0000aU-Hj for current@freebsd.org; Wed, 01 Jul 2009 23:20:04 +0700 Received: from regency.nsu.ru (localhost [127.0.0.1]) by regency.nsu.ru (8.14.2/8.14.2) with ESMTP id n61GLEjC040947 for ; Wed, 1 Jul 2009 23:21:14 +0700 (NOVST) (envelope-from danfe@regency.nsu.ru) Received: (from danfe@localhost) by regency.nsu.ru (8.14.2/8.14.2/Submit) id n61GL9qr040928 for current@freebsd.org; Wed, 1 Jul 2009 23:21:09 +0700 (NOVST) (envelope-from danfe) Date: Wed, 1 Jul 2009 23:21:08 +0700 From: Alexey Dokuchaev To: current@freebsd.org Message-ID: <20090701162108.GA33681@regency.nsu.ru> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="azLHFNyN32YCQGCU" Content-Disposition: inline User-Agent: Mutt/1.4.2.1i X-Mailman-Approved-At: Wed, 01 Jul 2009 19:05:50 +0000 Cc: Subject: Kernel panic with if_sf.ko X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Jul 2009 16:48:18 -0000 --azLHFNyN32YCQGCU Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hello there, I've started to observe the following rather annoying panic if I boot with if_sf loaded (via loader.conf) and having sf0 configured via DHCP on recent -CURRENT. If I comment out driver from loader.conf and load it manually (via kldload(8)) after system boots, it loads and gets configured just fine. Any clues here? Attached is relevant dmesg + DDB trace (debug kernel with WITNESS). I'm happy to provide any additional information (that is, ps/show uma/malloc, whatever). Thanks. ./danfe --azLHFNyN32YCQGCU Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="sf_panic.trace" sf0: link state changed to UP Starting Network: lo0 sf0. sf1: link state changed to DOWN Kernel page fault with the following non-sleepable locks held: exclusive sleep mutex sf0 (network driver) r = 0 (0xc356c584) locked @ /usr/src/ sys/modules/sf/../../dev/sf/if_sf.c:1971 KDB: stack backtrace: db_trace_self_wrapper(c0683396,d655e808,c05188c5,c0fd7bc2,7b3,...) at db_trace_s elf_wrapper+0x26 kdb_backtrace(c0fd7bc2,7b3,ffffffff,c0eb2914,d655e840,...) at kdb_backtrace+0x29 _witness_debugger(c0685907,d655e854,4,1,0,...) at _witness_debugger+0x25 witness_warn(5,0,c06a5f7f,d655e890,c3537d48,...) at witness_warn+0x1fd trap(d655e8e0) at trap+0x192 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0xc062cec2, esp = 0xd655e920, ebp = 0xd655e954 --- _bus_dmamap_sync(c3551c80,c3573000,2,90a,6000,...) at _bus_dmamap_sync+0xa2 sf_stop(c3551d80,4,c0fd7bc2,7c1,c3556c70,...) at sf_stop+0x130 sf_init_locked(c356c584,0,c0fd7bc2,7b3,c36e3c00,...) at sf_init_locked+0x50 sf_init(c356b000,c356b000,0,0,c36e3cbb,...) at sf_init+0x3c ether_ioctl(c3554c00,8020690c,c36e3c00,d655ea38,456bc5b,...) at ether_ioctl+0x41 in_ifinit(0,c36e3c00,1aa,1a6,c0eb2910,...) at in_ifinit+0x2a6 in_control(c377bce0,8040691a,c35a26c0,c3554c00,c36b9720,...) at in_control+0xd7b ifioctl(c377bce0,8040691a,c35a26c0,c36b9720,4,...) at ifioctl+0x157d soo_ioctl(c36a57e0,8040691a,c35a26c0,c34a9b00,c36b9720,...) at soo_ioctl+0x3d2 kern_ioctl(c36b9720,4,8040691a,c35a26c0,6b9884,...) at kern_ioctl+0x1dd ioctl(c36b9720,d655ecf8,419,c06a5e55,c36b9720,...) at ioctl+0x134 syscall(d655ed38) at syscall+0x323 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (54, FreeBSD ELF32, ioctl), eip = 0x281bf8a3, esp = 0xbfbfe5bc, ebp = 0xbfbfe5f8 --- Fatal trap 12: page fault while in kernel mode fault virtual address = 0x400000c fault code = supervisor read, page not present instruction pointer = 0x20:0xc062cec2 stack pointer = 0x28:0xd655e920 frame pointer = 0x28:0xd655e954 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 453 (ifconfig) [thread pid 453 tid 100040 ] Stopped at _bus_dmamap_sync+0xa2: movl 0xc(%ebx),%eax db> show pcpu cpuid = 0 dynamic pcpu = 0xd3c597 curthread = 0xc36b9720: pid 453 "ifconfig" curpcb = 0xd655ed90 fpcurthread = none idlethread = 0xc34adbe0: pid 10 "idle" APIC ID = 0 currentldt = 0x50 spin locks held: db> show allpcpu Current CPU: 0 cpuid = 0 dynamic pcpu = 0xd3c597 curthread = 0xc36b9720: pid 453 "ifconfig" curpcb = 0xd655ed90 fpcurthread = none idlethread = 0xc34adbe0: pid 10 "idle" APIC ID = 0 currentldt = 0x50 spin locks held: db> show locks exclusive sleep mutex sf0 (network driver) r = 0 (0xc356c584) locked @ /usr/src/ sys/modules/sf/../../dev/sf/if_sf.c:1971 db> show alllocks Process 453 (ifconfig) thread 0xc36b9720 (100040) exclusive sleep mutex sf0 (network driver) r = 0 (0xc356c584) locked @ /usr/src/ sys/modules/sf/../../dev/sf/if_sf.c:1971 --azLHFNyN32YCQGCU--