From owner-freebsd-stable@FreeBSD.ORG Wed Jul 18 21:04:47 2007 Return-Path: X-Original-To: freebsd-stable@freebsd.org Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B3A8716A401 for ; Wed, 18 Jul 2007 21:04:47 +0000 (UTC) (envelope-from mime@traveller.cz) Received: from nxm.secservers.com (nxm.secservers.com [89.185.226.22]) by mx1.freebsd.org (Postfix) with ESMTP id 547B013C48D for ; Wed, 18 Jul 2007 21:04:47 +0000 (UTC) (envelope-from mime@traveller.cz) Received: from [127.0.0.1] (nxm.secservers.com. [89.185.226.22]) by nxm.secservers.com (8.13.4/8.13.8) with ESMTP id l6IL4iXB004613 for ; Wed, 18 Jul 2007 23:04:45 +0200 (CEST) (envelope-from mime@traveller.cz) From: Michal Mertl To: freebsd-stable Content-Type: text/plain; charset=ISO-8859-2 Date: Wed, 18 Jul 2007 23:04:34 +0200 Message-Id: <1184792674.1670.7.camel@genius.i.cz> Mime-Version: 1.0 X-Mailer: Evolution 2.10.3 FreeBSD GNOME Team Port Content-Transfer-Encoding: 8bit Subject: Panic with umass (with USB tape and Amanda) X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Jul 2007 21:04:47 -0000 Hello everybody, I have just had a panic on 6.2 amd64 box with ehci connected USB DDS4 tape drive while it was for the first time being accessed with Amanda. I have previously successfully tested it with tar. I have a kernel crash dump with the following information: panic: trying to sleep while sleeping is prohibited cpuid = 0 KDB: stack backtrace: panic() at panic+0x250 sleepq_add() at sleepq_add+0x225 msleep() at msleep+0x132 bwait() at bwait+0x55 swap_pager_putpages() at swap_pager_putpages+0x45c vm_pageout_flush() at vm_pageout_flush+0x13b vm_contig_launder_page() at vm_contig_launder_page+0xdc vm_page_alloc_contig() at vm_page_alloc_contig+0x321 contigmalloc() at contigmalloc+0x5f7 bus_dmamem_alloc() at bus_dmamem_alloc+0x80 usb_block_allocmem() at usb_block_allocmem+0x118 usb_allocmem() at usb_allocmem+0x13e usbd_transfer() at usbd_transfer+0xf1 umass_setup_transfer() at umass_setup_transfer+0x3b umass_bbb_state() at umass_bbb_state+0xc0 usb_transfer_complete() at usb_transfer_complete+0x217 uhci_softintr() at uhci_softintr+0x100 uhci_intr1() at uhci_intr1+0x152 ithread_loop() at ithread_loop+0x148 fork_exit() at fork_exit+0xbb fork_trampoline() at fork_trampoline+0xe bt full #0 0xffffffff8027ca40 in shutdown_conf (unused=0x0) at ../../../kern/kern_shutdown.c:138 No locals. #1 0xffffffff8027d304 in boot (howto=-2004318071) at ../../../kern/kern_shutdown.c:209 _ep = (struct eventhandler_entry *) 0x0 _el = (struct eventhandler_list *) 0xffffff007b84c800 first_buf_printf = 1 #2 0xffffffff8027cd9b in panic ( fmt=0xffffffff803dfa78 "trying to sleep while sleeping is prohibited") at ../../../kern/kern_shutdown.c:542 bootopt = 260 newpanic = 1 ap = {{gp_offset = 8, fp_offset = 48, overflow_arg_area = 0xffffffffb197a650, reg_save_area = 0xffffffffb197a570}} buf = "trying to sleep while sleeping is prohibited", '\0' #3 0xffffffff8029f02a in sleepq_switch (wchan=0x0) at ../../../kern/subr_sleepqueue.c:447 No locals. #4 0xffffffff8028337c in msleep (ident=0xffffffff80560b40, mtx=0x0, priority=68, wmesg=0xffffffff803ef69a "swwrt", timo=0) at ../../../kern/kern_synch.c:133 p = (struct proc *) 0xffffffff9f826428 catch = 0 rval = -2141828960 flags = -2141828960 #5 0xffffffff802cd1d6 in vfs_unbusy_pages (bp=0xffffffff803ef69a) at ../../../kern/vfs_bio.c:3227 i = 0 obj = 0x1 m = 0xffffffff9f826428 #6 0xffffffff8034b691 in swap_pager_copy (srcobject=0xffffff007fd8a570, dstobject=0x0, offset=18446742974451804800, destroysource=-1) at ../../../vm/swap_pager.c:766 i = 18446744072394090256 #7 0xffffffff80361a70 in vm_pageout_object_deactivate_pages ( pmap=0xffffffffb197a810, first_object=0xffffff000f21ea80, desired=-1315461200) at ../../../vm/vm_pageout.c:539 backing_object = 0xffffffff802cd1d6 object = 0x1 p = 0xffffffff802cd1d6 next = 0xffffffffb197a710 actcount = -1 rcount = 0 remove_mode = -1315461232 #8 0xffffffff80351338 in vm_page_release_contigl (m=0xffffff000f21ea80, count=18446742976342828400) at ../../../vm/vm_contig.c:353 No locals. #9 0xffffffff803518b3 in contigmalloc (size=0, type=0xffffffff, flags=-256, low=32768, high=1048575, alignment=505970, boundary=18446742976282112000) at ../../../vm/vm_contig.c:579 ret = (void *) 0x7b872 pages = 0x1 npgs = 4503560972664832 #10 0xffffffff80352040 in contigmalloc (size=0, type=0xffffffff80521d20, flags=1, low=0, high=4294967295, alignment=0, boundary=0) at ../../../vm/vm_contig.c:546 ret = (void *) 0x0 pages = 0xffffff0076a46860 npgs = 8 #11 0xffffffff80368f3d in alloc_bounce_pages (dmat=0x0, numpages=1457574160) at ../../../amd64/amd64/busdma_machdep.c:1061 ---Type to continue, or q to quit--- bpage = (struct bounce_page *) 0x1 bz = (struct bounce_zone *) 0xffffff000978ed00 count = 1 #12 0xffffffff802379ff in usb_block_allocmem (tag=0xffffff0056e0d100, size=0, align=32768, dmap=0xffffff0076a46860) at ../../../dev/usb/usb_mem.c:187 p = (usb_dma_block_t *) 0x0 #13 0xffffffff80237bba in usb_allocmem (bus=0x0, size=32768, align=0, p=0xffffff0076a46860) at ../../../dev/usb/usb_mem.c:248 tag = 0x0 err = USBD_NORMAL_COMPLETION f = (struct usb_frag_dma *) 0x0 b = (usb_dma_block_t *) 0xffffffffb197aaa0 i = 0 #14 0xffffffff80239c5a in usbd_transfer (xfer=0xffffff0076a46800) at ../../../dev/usb/usbdi.c:311 bus = (struct usbd_bus *) 0x0 pipe = 0xffffff00132bb500 err = 1540196352 size = 32768 #15 0xffffffff80233fa9 in umass_setup_transfer (sc=0x0, pipe=0x0, buffer=0x0, buflen=0, flags=0, xfer=0xffffff0076a46800) at ../../../dev/usb/umass.c:1252 err = USBD_NORMAL_COMPLETION #16 0xffffffff802344c0 in umass_bbb_state (xfer=0x0, priv=0xffffff005bcd8800, err=USBD_NORMAL_COMPLETION) at ../../../dev/usb/umass.c:1626 Residue = 0 next_xfer = 0x0 #17 0xffffffff8023a50f in usb_transfer_complete (xfer=0xffffff007b962000) at ../../../dev/usb/usbdi.c:863 pipe = 0xffffff005994bb00 dmap = (usb_dma_t *) 0xffffffff80517ea0 sync = 0 erred = 0 repeat = 0 polling = 0 #18 0xffffffff8022fdb0 in uhci_softintr (v=0x0) at ../../../dev/usb/uhci.c:1374 sc = (uhci_softc_t *) 0xffffffff866ad000 ii = (uhci_intr_info_t *) 0x0 nextii = (uhci_intr_info_t *) 0x0 #19 0xffffffff8022faab in uhci_intr1 (sc=0xffffffff866ad000) at ../../../dev/usb/uhci.c:1274 status = 1 ack = 1 #20 0xffffffff80267269 in ithread_loop (arg=0xffffff007b9de540) at ../../../kern/kern_intr.c:682 ie = (struct intr_event *) 0xffffff0000029800 __func__ = "Óc&\200˙˙˙˙Óc&\200˙" #21 0xffffffff8026606b in fork_exit ( callout=0xffffffff80267121 , arg=0xffffff007b9de540, frame=0xffffffffb197ac50) at ../../../kern/kern_fork.c:821 p = (struct proc *) 0xffffff007b6c5a08 #22 0xffffffff8036e77e in Xapic_isr3 () at apic_vector.S:134 I can probably provide some more information, possibly even trying to reproduce it on similar system (this one is in production). Thank you Michal