Date: Fri, 7 Nov 2008 14:02:42 -0800 From: Jeremy Chadwick <koitsu@FreeBSD.org> To: Thomas Sparrevohn <Thomas.Sparrevohn@btinternet.com> Cc: Alexey Shuvaev <shuvaev@physik.uni-wuerzburg.de>, freebsd-current@freebsd.org, freebsd-usb@freebsd.org Subject: Re: USB4BSD release candidate number 3 - request for review Message-ID: <20081107220242.GA14562@icarus.home.lan> In-Reply-To: <200811071946.01269.Thomas.Sparrevohn@btinternet.com> References: <200810251925.47273.hselasky@c2i.net> <20081106210300.GA1595@wep4035.physik.uni-wuerzburg.de> <200811070036.15816.hselasky@c2i.net> <200811071946.01269.Thomas.Sparrevohn@btinternet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 07, 2008 at 07:46:00PM +0000, Thomas Sparrevohn wrote: > On Thursday 06 November 2008 23:36:14 Hans Petter Selasky wrote: > > On Thursday 06 November 2008, Alexey Shuvaev wrote: > > > db_trace_self_wrapper() at db_trace_self_wrapper+0x2a > > > _witness_debugger() at _witness_debugger+0x49 > > > witness_checkorder() at witness_checkorder+0x7e6 > > > _sx_xlock() at _sx_xlock+0x44 > > > vm_map_lookup() at vm_map_lookup+0x47 > > > vm_fault() at vm_fault+0xfe > > > trap_pfault() at trap_pfault+0x1fa > > > trap() at trap+0x201 > > > calltrap() at calltrap+0x8 > > > --- trap 0xc, rip = 0xffffffff804b2466, rsp = 0xfffffffeba7f8ac0, rbp = > > > 0xfffffffeba7f8b00 --- bcopy() at bcopy+0x16 > > > usb2_bdma_pre_sync() at usb2_bdma_pre_sync+0x35 > > > usb2_bdma_work_loop() at usb2_bdma_work_loop+0x29b > > > usb2_command_wrapper() at usb2_command_wrapper+0x76 > > > usb2_callback_wrapper() at usb2_callback_wrapper+0xfd > > > usb2_command_wrapper() at usb2_command_wrapper+0x76 > > > usb2_callback_proc() at usb2_callback_proc+0x68 > > > usb2_process() at usb2_process+0xc0 > > > > Hi Alexey, > > > > This looks more like a busdma problem to me. "bcopy()" is called from > > within "bus_dmamap_sync()". Maybe you can figure out if it is the source or > > the destination address that fails? > > > > Looks like your system has started bouncing data to the 32-bit address range. > > > > I can reproduce an error like it whenever I use DMA on umass device - The error > somehow are triggered/created by the multiport patches that was introduced > in the ATA framework back in April - For a long time I believed it was an error > in the ATA frame work until I discovered that If I disabled the umass device > the error disappered > > I am using ZFS on both devices. If I change to usb2_ata the problem disappers. > I think that is because usb2_ata does not use DMA. > > I believe the problem is related to the DMA handling in the umass > > see attached fault - In short the problem has been around for a long time > but it seems to be related to the USB stack DMA handling - before usb2 > it showed up as a DMA error in the ATA driver - but that was because > the old umass driver somehow "stole" an active DMA > > {gigantic snip} Check out this thread, which includes patches: http://lists.freebsd.org/pipermail/freebsd-current/2008-November/thread.html#220 http://lists.freebsd.org/pipermail/freebsd-current/2008-November/000220.html -- | Jeremy Chadwick jdc at parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB |
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081107220242.GA14562>