From owner-freebsd-current@FreeBSD.ORG Fri Jun 6 01:53:19 2008 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 581AA106566C for ; Fri, 6 Jun 2008 01:53:19 +0000 (UTC) (envelope-from gbell72@rogers.com) Received: from web88007.mail.re2.yahoo.com (web88007.mail.re2.yahoo.com [206.190.37.194]) by mx1.freebsd.org (Postfix) with SMTP id 182C28FC17 for ; Fri, 6 Jun 2008 01:53:18 +0000 (UTC) (envelope-from gbell72@rogers.com) Received: (qmail 38639 invoked by uid 60001); 6 Jun 2008 01:53:18 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=rogers.com; h=X-YMail-OSG:Received:Date:From:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-ID; b=BiR8YqOY96qKKH6/BdJoB20s/x65DyfL9EyjjZPKl8W+U4yyEpEu51RrdZz9EvwqsdgP+aa+ljT84eAJt4BFIS+tL1bAM14oUi772OJC9/JIL+3YUbi7Fy+ceykNvaxTUQ/yMPbJqc2x6QFyLTsGTEnCVadRJ0BSbq/1gSgj/SQ=; X-YMail-OSG: algZ8BYVM1nY7zbPl5zZwAeI8LAW_ijokvMMShDm3geQfb6lsUA6F8oHsSQbYdG4C6GhOe9k3jSTpFUuCrlEmr3GLbxxwxxbIqO4TQ-- Received: from [99.233.178.192] by web88007.mail.re2.yahoo.com via HTTP; Thu, 05 Jun 2008 21:53:18 EDT Date: Thu, 5 Jun 2008 21:53:18 -0400 (EDT) From: Gardner Bell To: freebsd-current@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Message-ID: <251426.38028.qm@web88007.mail.re2.yahoo.com> X-Mailman-Approved-At: Fri, 06 Jun 2008 02:33:11 +0000 Subject: Re: panic attaching usb 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: Fri, 06 Jun 2008 01:53:19 -0000 --- Gardner Bell wrote: > > --- Gardner Bell wrote: > > > Hello, > > > > I just mounted my external USB drive and received the following > > panic. > > This machine is running amd64 8.0-CURRENT from 05/28/2008. If any > > other info is required I'll be more than happy to provide it. > > > > db> s > > > > Fatal trap 12: page fault while in kernel mode > > cpuid = 1; apic id = 01 > > fault virtual address = 0x18 > > fault code = supervisor read data, page not present > > instruction pointer = 0x8:0xffffffff80248450 > > stack pointer = 0x10:0xffffffff808d0770 > > frame pointer = 0x10:0xffffffff808d0780 > > code segment = base 0x0, limit 0xfffff, type 0x1b > > = DPL 0, pres 1, long 1, def32 0, gran 1 > > processor eflags = trace trap, interrupt enabled, resume, > IOPL > > = > > 0 > > current process = 17 (usb1) > > [thread pid 17 tid 100029 ] > > Stopped at _mtx_assert+0x60: movq 0x18(%rdi),%rax > > db>bt > > Tracing pid 17 tid 100029 td 0xffffff0001170000 > > _mtx_assert() at _mtx_assert+0x60 > > xpt_release_ccb() at xpt_release_ccb+0x49 > > probedone() at probedone+0x29a > > camisr_runqueue() at camisr_runqueue+0x1a7 > > xpt_bus_deregister() at xpt_bus_deregister+0x185 > > umass_cam_detach_sim() at umass_cam_detach_sim+0x1f > > umass_detach() at umass_detach+0xcf > > device_detach() at device_detach+0xa4 > > usb_disconnect_port() at usb_disconnect_port+0x8b > > uhub_explore() at uhub_explore+0x10d > > usb_discover() at usb_discover+0x38 > > usb_event_thread() at usb_event_thread+0x7c > > fork_exit() at fork_exit+0x12a > > fork_trampoline() at fork_trampoline+0xe > > --- trap 0, rip = 0, rsp = 0xffffffff808d0d30, rbp = 0 --- > > db>show alllocks > > Process 924 (ntpd) thread 0xffffff00013a56c0 (100091) > > exclusive sleep mutex sigacts r = 0 (0xffffff000126eca8) locked @ > > /usr/src/sys/k > > ern/subr_trap.c:223 > > exclusive sleep mutex process lock r = 0 (0xffffff000139d0f8) > locked > > @ > > /usr/src/ > > sys/kern/subr_trap.c:222 > > Process 17 (usb1) thread 0xffffff0001170000 (100029) > > exclusive sleep mutex Giant r = 0 (0xffffffff80585540) locked @ > > /usr/src/sys/dev > > /usb/uhub.c:639 > > db>show thread 100029 > > Thread 100029 at 0xffffff0001170000: > > proc (pid 17): 0xffffff000116a860 > > name: usb1 > > stack: 0xffffffff808cd000-0xffffffff808d0fff > > flags: 0x10005 pflags: 0x200000 > > state: RUNNING (CPU 1) > > priority: 24 > > db>tr 100029 > > Tracing pid 17 tid 100029 td 0xffffff0001170000 > > _mtx_assert() at _mtx_assert+0x60 > > xpt_release_ccb() at xpt_release_ccb+0x49 > > probedone() at probedone+0x29a > > camisr_runqueue() at camisr_runqueue+0x1a7 > > xpt_bus_deregister() at xpt_bus_deregister+0x185 > > umass_cam_detach_sim() at umass_cam_detach_sim+0x1f > > umass_detach() at umass_detach+0xcf > > device_detach() at device_detach+0xa4 > > usb_disconnect_port() at usb_disconnect_port+0x8b > > uhub_explore() at uhub_explore+0x10d > > usb_discover() at usb_discover+0x38 > > usb_event_thread() at usb_event_thread+0x7c > > fork_exit() at fork_exit+0x12a > > fork_trampoline() at fork_trampoline+0xe > > --- trap 0, rip = 0, rsp = 0xffffffff808d0d30, rbp = 0 --- > > db> Sorry, replying to myself but here is the contents of the instruction pointer (kgdb) l *0xffffffff80248450 0xffffffff80248450 is in _mtx_assert (/usr/src/sys/kern/kern_mutex.c:638). 633 return; 634 switch (what) { 635 case MA_OWNED: 636 case MA_OWNED | MA_RECURSED: 637 case MA_OWNED | MA_NOTRECURSED: 638 if (!mtx_owned(m)) 639 panic("mutex %s not owned at %s:%d", 640 m->lock_object.lo_name, file, line); 641 if (mtx_recursed(m)) { 642 if ((what & MA_NOTRECURSED) != 0) (kgdb)