Hi David,

can you modify David B.'s patch a little bit, so
we can see if it is just one wrong readl.

(patched usb-ohci.c)
@@ -1392,6 +1413,12 @@
        __u8 data[8];
 
        num_ports = readl (&ohci->regs->roothub.a) & RH_A_NDP;
#ifdef PARANOID
       if (num_ports > MAX_ROOT_PORTS) {
           err ("rh_send_irq given bogus controller address %p",
ohci->regs);
+           err ("num_ports: %d", num_ports);
+           err ("num_ports 2nd try: %d, readl (&ohci->regs->roothub.a)
& RH_A_NDP);
+           err ("num_ports 3rd try: %d, readl (&ohci->regs->roothub.a)
& RH_A_NDP);
           return 0;
       }
#endif      


Thanks

Roman



David Nash wrote:
> 
> Hi,
>   I reported an oops / kernel panic in usb-ohci/rh_send_irq with a
> bogus pointer to an OHCI controller in early May.  This happens within
> a couple of dyas of loading the usb-ohci module.  Without the module
> loaded my machine runs without problems.
> 
> I noticed the report from Miles Lane ( 2.4.0-test1-ac18 -- OOPS in
> usb-ohci when suspending machine) showing the same oops dump when
> suspending the machine.
> 
> I applied David's ohci-paranoid patch to 2.4.0-test1-ac11 and trapped
> a bogus address message 48 hours latter.  The was no oops, the system
> continues to run and USB is still functioning normally.
> 
> usb-ohci.c: USB OHCI at membase 0xd2892000, IRQ 9
> usb-ohci.c: Advanced Micro Devices [AMD] AMD-756 [Viper] USB
> usb.c: new USB bus registered, assigned bus number 1
> usb.c: USB new device connect, assigned device number 1
> hub.c: USB hub found
> hub.c: 4 ports detected
> usb.c: USB new device connect, assigned device number 2
> usb.c: USB device descriptor short read (expected 18, got 0)
> usb.c: USB disconnect on device -1
> usb.c: USB new device connect, assigned device number 2
> usb.c: This device is not recognized by any installed USB driver.
> usb.c: registered new driver wacom
> mouse0: PS/2 mouse device for input0
> input0: Wacom Intuos 6x8 on usb1:2.0
> 
> usb-ohci.c: rh_send_irq given bogus controller address d2892000
> 
> The membase and bogus addresses are equal and rh_send_irq worked
> correctly the next time it was called.  This suggests to me that maybe
> the readl returned bad data from the controller on this one occasion.
> 
> I am not running APM or APCI and power management is disabled in the
> BIOS.  The machine has an Athlon processor on a MSI K7 Pro m/b.
> 
> I hope this provides another data point to help track down this
> problem.  It looks like the patch provides a way to avoid the oops and
> continue running normally.  I'm happy to provide further information
> and run patches.
> 
>     David
> 
> -------------------------------------------------------------------------------
>   David Nash     - [EMAIL PROTECTED]
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to