Re: OHCI root_port_reset() deadly loop...

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <david-b@...>
Cc: <linux-usb-users@...>, <linux-kernel@...>, <greg@...>
Date: Tuesday, October 9, 2007 - 4:41 pm

From: David Brownell <david-b@pacbell.net>
Date: Tue, 09 Oct 2007 09:38:27 -0700


But it's an excellent example of why my patch is mandatory.

When the device gets into a stuck state, this code does the wrong
thing.

Instead of trying to deal with bad situations, it hangs the system
instead.  That sucks for anyone trying to debug something like this.
This has caused weeks of debugging and grief for people, and it
could have all been eliminated if this looping code were more
robust to hardware failures.

If you can't see why this is bad programming practice in a hardware
driver, I will try to get my patch to someone who does.

Even though I'm severly overloaded, you asked me for a patch, I gave
you one.  And now you want to push it back at me because it isn't
clear to you yet that the code there right now is a huge problem.

And all of this is independant of making sure EHCI loads first,
we need to fix that too.
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
OHCI root_port_reset() deadly loop..., David Miller, (Sun Oct 7, 2:53 am)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Sun Oct 7, 3:31 am)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Sun Oct 7, 3:51 am)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Mon Oct 8, 7:54 pm)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Tue Oct 9, 12:36 am)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Tue Oct 9, 12:44 am)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Tue Oct 9, 12:38 pm)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Tue Oct 9, 4:41 pm)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Tue Oct 9, 5:09 pm)
Re: OHCI root_port_reset() deadly loop..., Greg KH, (Tue Oct 9, 4:46 pm)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Tue Oct 9, 5:05 pm)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Tue Oct 9, 12:09 am)
Re: OHCI root_port_reset() deadly loop..., Benjamin Herrenschmidt, (Tue Oct 9, 1:13 am)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Tue Oct 9, 1:26 am)
Re: OHCI root_port_reset() deadly loop..., Benjamin Herrenschmidt, (Tue Oct 9, 2:37 am)
Re: OHCI root_port_reset() deadly loop..., Greg KH, (Mon Oct 8, 11:10 pm)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Mon Oct 8, 11:16 pm)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Mon Oct 8, 11:34 pm)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Mon Oct 8, 11:42 pm)
Re: OHCI root_port_reset() deadly loop..., Greg KH, (Tue Oct 9, 12:39 am)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Tue Oct 9, 1:00 am)
Re: OHCI root_port_reset() deadly loop..., Benjamin Herrenschmidt, (Tue Oct 9, 2:43 am)
Re: OHCI root_port_reset() deadly loop..., David Brownell, (Tue Oct 9, 2:48 pm)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Tue Oct 9, 1:23 am)
Re: OHCI root_port_reset() deadly loop..., David Miller, (Tue Oct 9, 12:47 am)
Re: OHCI root_port_reset() deadly loop..., Greg KH, (Tue Oct 9, 2:06 am)
Re: OHCI root_port_reset() deadly loop..., Benjamin Herrenschmidt, (Tue Oct 9, 1:11 am)