Re: USB-related lockup in test12-pre5

2000-12-07 Thread Johannes Erdfelt

On Thu, Dec 07, 2000, David Woodhouse <[EMAIL PROTECTED]> wrote:
> Haven't tried test12-pre7 yet. Is enabling bus mastering likely to make 
> this magically go away? I doubt it.

Probably not. Enabling bus mastering is the difference between USB
working at all (transfering data to the device) and not working.

> This happened when trying to run excel under wine. Dual Celeron with 
> CONFIG_USB_UHCI.

Could you try the alternate UHCI driver? You may need to disable the
UHCI driver you have configured for the option to become visible.

> >>EIP; c0270c21<=
> Trace; c01f488e 
> Trace; ca8578be <[audio]usbout_completed+7e/c0>
> Trace; c01ffc3e 
> Trace; c01ffd49 

It looks like you were using USB audio? Could you explain what you were
doing when the oops happened?

JE

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



Re: USB-related lockup in test12-pre5

2000-12-08 Thread David Woodhouse

On Thu, 7 Dec 2000, Johannes Erdfelt wrote:

> Could you try the alternate UHCI driver? You may need to disable the
> UHCI driver you have configured for the option to become visible.

Differently broken:
uhci: host controller process error. something bad happened
uhci: host controller halted. very bad

... but at least the machine doesn't die. This was working in test11,
IIRC. Certainly in test10.


-- 
dwmw2


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



Re: USB-related lockup in test12-pre5

2000-12-08 Thread Johannes Erdfelt

On Fri, Dec 08, 2000, David Woodhouse <[EMAIL PROTECTED]> wrote:
> On Thu, 7 Dec 2000, Johannes Erdfelt wrote:
> 
> > Could you try the alternate UHCI driver? You may need to disable the
> > UHCI driver you have configured for the option to become visible.
> 
> Differently broken:
>   uhci: host controller process error. something bad happened
>   uhci: host controller halted. very bad
> 
> ... but at least the machine doesn't die. This was working in test11,
> IIRC. Certainly in test10.

I'm sure you can guess from the messages that we have a problem.

However, I haven't seen that error in a long time. Lemme go back and
look in the docs to see if I can get some more information as to why
that would actually happen.

JE

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



Re: USB-related lockup in test12-pre5

2000-12-08 Thread Johannes Erdfelt

On Fri, Dec 08, 2000, Johannes Erdfelt <[EMAIL PROTECTED]> wrote:
> On Fri, Dec 08, 2000, David Woodhouse <[EMAIL PROTECTED]> wrote:
> > On Thu, 7 Dec 2000, Johannes Erdfelt wrote:
> > 
> > > Could you try the alternate UHCI driver? You may need to disable the
> > > UHCI driver you have configured for the option to become visible.
> > 
> > Differently broken:
> > uhci: host controller process error. something bad happened
> > uhci: host controller halted. very bad
> > 
> > ... but at least the machine doesn't die. This was working in test11,
> > IIRC. Certainly in test10.
> 
> I'm sure you can guess from the messages that we have a problem.
> 
> However, I haven't seen that error in a long time. Lemme go back and
> look in the docs to see if I can get some more information as to why
> that would actually happen.

Actually, looking back at your previous email, enabling bus mastering
may make this error go away.

Could you give -pre7 a try? Or have you already?

JE

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



Re: USB-related lockup in test12-pre5

2000-12-09 Thread David Woodhouse

On Fri, 8 Dec 2000, Johannes Erdfelt wrote:

> Actually, looking back at your previous email, enabling bus mastering
> may make this error go away.
>
> Could you give -pre7 a try? Or have you already?

This is pre7

-- 
dwmw2


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



[FIXED] Re: USB-related lockup in test12-pre5

2000-12-09 Thread David Woodhouse


>>EIP; c0270c21<=
Trace; c01f488e 
Trace; ca8578be <[audio]usbout_completed+7e/c0>
Trace; c01ffc3e 
Trace; c01ffd49 

1. process_urb() obtains the urb_list_lock.
2. Then calls urb->complete() which is audio.c::usbout_complete()
3. Which in turn calls usb_submit_urb()
4. Which calls uhci_submit_urb()
5. Which tries to obtain urb_list_lock --> BOOM!

As it seems that we were already able to drop the lock in process_urb()
and not worry about the consequences, I've just made it do so.

Index: drivers/usb/usb-uhci.c
===
RCS file: /net/passion/inst/cvs/linux/drivers/usb/usb-uhci.c,v
retrieving revision 1.1.2.21
diff -u -r1.1.2.21 usb-uhci.c
--- drivers/usb/usb-uhci.c  2000/12/07 09:36:19 1.1.2.21
+++ drivers/usb/usb-uhci.c  2000/12/09 13:49:50
@@ -2626,14 +2626,14 @@
// Completion
if (urb->complete) {
urb->dev = NULL;
+   spin_unlock(&s->urb_list_lock);
urb->complete ((struct urb *) urb);
// Re-submit the URB if ring-linked
if (is_ring && (urb->status != -ENOENT) &&
!contains_killed) {
urb->dev=usb_dev;
-   spin_unlock(&s->urb_list_lock);
uhci_submit_urb (urb);
-   spin_lock(&s->urb_list_lock);
}
+   spin_lock(&s->urb_list_lock);
}

usb_dec_dev_use (usb_dev);

-- 
dwmw2


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/