> Which included some memory trashing that was clearly not caused by OHCI,
> since it also showed up without OHCI having been loaded.  Do you have
> any memory trashing symptoms like that?

Nothing at all.

> Alternatively, and not dissimilar, a TD is getting freed a bit early,
> and then when its poisoned on free (this can't happen if you're not
> running with memory debug enabled) the HC is fetching from a7a7a7a0
> and using that data as a TD.  I think if it were an ED in this boat
> the symptoms would be different, but that's also a possibility.

I've poisoning enabled but never saw a "bad entry" indicating poisoned 
memory.

> > drivers/usb/core/hub.c: new USB device 00:0c.0-3.2, assigned address 4
> > drivers/usb/core/message.c: usb_control/bulk_msg: timeout
> > drivers/usb/host/ohci-dbg.c: UNLINK cb3a96dc 
>dev:4,ep=0-I,CTRL,flags:0,len:0/8,stat:-2
> > drivers/usb/core/hcd.c: 00:0c.0: wait for giveback urb cb3a96dc
> > drivers/usb/host/ohci-q.c: 00:0c.0 bad entry  3080000
> 
> That means it found 0308 0000 on the donelist, which was "bad" since
> there was no record of that DMA address.  Given that value (more on
> that issue later) it's not surprising that the HC reported some kind
> of fatal error before much longer.

I didn't realize this when sending, but this 0308 0000 in this case is 
very special. In most other cases it was something like [0]b3* *fc0  - 
which is interesting because it's the last td in a page. And it fitted 
nicely to the other td's in the async schedule.
The 0308 0000 thing however doesn't fit to anything - strange.

> > drivers/usb/host/ohci-hcd.c: OHCI Unrecoverable Error, 00:0c.0 disabled
> > drivers/usb/host/ohci-dbg.c: OHCI controller 00:0c.0 state
> > drivers/usb/host/ohci-dbg.c: OHCI 1.0, with legacy support registers
> > drivers/usb/host/ohci-dbg.c: control: 0x0000009f HCFS=operational CLE IE PLE CBSR=3
> > drivers/usb/host/ohci-dbg.c: cmdstatus: 0x00000000 SOC=0
> > drivers/usb/host/ohci-dbg.c: intrstatus: 0x00000076 RHSC FNO UE SF WDH
> > drivers/usb/host/ohci-dbg.c: intrenable: 0x80000012 MIE UE WDH
> > drivers/usb/host/ohci-dbg.c: ed_controlhead 0b39c080
> 
> So there was a control ED with that DMA address and that was either the
> only active ED, or all the others were also control EDs.  Notice how that
> DMA address starts 0b39 not 0308 ...  the CPU would use cb39.

Yes. In all other cases with bad entry like 0b3* *fc0, none of them caused 
the OHCI Unrecoverable Error, IIRC.

> > drivers/usb/core/hcd.c: shutdown 00:0c.0 urb cb3a96dc pipe 80000480, current 
>status -115
> > drivers/usb/core/hcd.c: shutdown 00:0c.0 urb cb3a9674 pipe 40408280, current 
>status -115
> > drivers/usb/core/hcd.c: shutdown 00:0c.0 urb cb3a9264 pipe 40408180, current 
>status -115
> 
> Three IN endpoints, control and two interrupt, three different devices,
> were all doing I/O.  You weren't trying to break anything by sending
> past two unpowered hubs, or anything electrically sadistic like that,
> were you?  :)

Nope: #1 is the roothub, #2 an external (selfpowered) hub and #4 was the 
FX with the GetDescriptor (device) request pending. I see the "bad 
entry" as well with nothing but the FX directly connect to a root port.

> > pci_pool_destroy 00:0c.0/ohci_td, cb39b000 busy
> > pci_pool_destroy 00:0c.0/ohci_ed, cb39c000 busy
> 
> Also interesting.  It _should_ have cleaned up.  Testing "cleanup
> after disaster" code is still on my 2.5 list; awkward to reproduce!
> 
> But more important, those addresses also didn't start with 0308 (or
> more like c308).  Which strongly suggests that the 0308 "dma address"
> likely came from overwriting a TD with some other data.

Yes, this 0308 thing is really strange...

To be sure I've also run memtest-86 against this box and played with 
different BIOS settings like PCI delayed transactions - didn't change 
anything.

I have some indication it might be somehow related with short IN packets - 
but I'm even more concerned why I'm getting them at all...

Martin




-------------------------------------------------------
This sf.net email is sponsored by: viaVerio will pay you up to
$1,000 for every account that you consolidate with us.
http://ad.doubleclick.net/clk;4749864;7604308;v?
http://www.viaverio.com/consolidator/osdn.cfm
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to