Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Jul 2007 18:53:32 +0200 (CEST)
From:      Juergen Lock <nox@jelal.kn-bremen.de>
To:        mime@traveller.cz
Cc:        freebsd-stable@freebsd.org
Subject:   Re: Panic with umass (with USB tape and Amanda)
Message-ID:  <200707221653.l6MGrWMu003868@saturn.kn-bremen.de>
In-Reply-To: <1184792674.1670.7.camel@genius.i.cz>

next in thread | previous in thread | raw e-mail | index | archive | help
In article <1184792674.1670.7.camel@genius.i.cz> you write:
>Hello everybody,
Hi!
>
>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
>...

This looks like the known problem of bus_dmamem_alloc sleeping
when it shouldn't (its being called with BUS_DMA_NOWAIT), which has
hit me with usb before.

 Workarounds:

1. add more RAM (this seems to be triggered by page shortage/fragmentation)
2. reboot before you use the device
3. try the HPS usb stack, it may have worked around this issue:
	http://www.turbocat.net/~hselasky/usb4bsd/
(I hope this is still the right url, I haven't used the stack in a while.)

 HTH,
	Juergen



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200707221653.l6MGrWMu003868>