Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Dec 2014 23:05:40 +0100
From:      Hans Petter Selasky <hps@selasky.org>
To:        kott <kmatpral@yahoo.com>, freebsd-usb@freebsd.org
Subject:   Re: usb_pc_cpu_flush
Message-ID:  <5499E734.1070507@selasky.org>
In-Reply-To: <1419359192795-5975583.post@n5.nabble.com>
References:  <1419359192795-5975583.post@n5.nabble.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 12/23/14 19:26, kott wrote:
> Hello -
> I am seeing this fault when i plugin a external usb device, and was
> wondering if this indicates DMA/Cache coherency problem
> -----
> _ehci_append_qh: 0xf3dd2300 to 0xf3dc3c00
> Kernel page fault with the following non-sleepable locks held:
> exclusive sleep mutex ehci0 (usb_def_mtx) r = 0 (0xc73ece74) locked @
> sys/dev/usb/usb_transfer.c
> exclusive sleep mutex USB device mutex (USB device mutex) r = 0 (0xc73da850)
> locked @ /sys/dev/usb/usb_transfer.c
>
> Stopped at      usb_pc_cpu_flush+0xc:   ldr     r2, [r0, #0x018]
> ----------------------------
>
> Thanks
> kott

Hi,

The flush is supposed to call some other functions which write the 
memory cache to RAM. It should not panic like that. Can you get the 
complete backtrace. I guess that some memory content might have been 
lost due to missing or wrong cache sync operations. What is the value of 
"r0" ?

--HPS




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