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/f...hread.html#220
http://lists.freebsd.org/pipermail/f...er/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 |

_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/lis...reebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"