Discussion:
pl2303 - pl2303_open - failed submitting interrupt urb, error -28
(too old to reply)
Andrew Morton
2008-12-03 09:42:08 UTC
Permalink
(cc linux-usb)
Hi,
the following applies to a "vanilla" 2.6.27.7 kernel built and running
on a Debian unstable system.
To obtain out-of-band access to a number of switches and routers, I
have a seven-port USB hub to which seven identical USB-to-serial
adaptors using the PL2303 chip and driver are connected. All seven
work when only one of them is used at a time.
Cereal is an application which keeps a process (GNU screen) attached
to the tty at all times to be able to log what happens on the serial
port. When I start cereal on all seven ports, I start getting
"pl2303_open - failed submitting interrupt urb, error -28" errors in
Dec 2 14:07:36 alemana kernel: pl2303 ttyUSB2: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:37 alemana kernel: pl2303 ttyUSB5: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:38 alemana kernel: pl2303 ttyUSB6: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:41 alemana kernel: pl2303 ttyUSB2: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:43 alemana kernel: pl2303 ttyUSB5: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:43 alemana kernel: pl2303 ttyUSB6: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:47 alemana kernel: pl2303 ttyUSB2: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:48 alemana kernel: pl2303 ttyUSB5: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:49 alemana kernel: pl2303 ttyUSB6: pl2303_open - failed submitting interrupt urb, error -28
The corresponding ports are not useable in that case.
When one googles for this error message, one finds a thread from 2006
with Greg KH commenting. In my case, the error doesn't hose the USB
subsystem, I can unplug the adapters and plug them in again one and a
time without a problem, and I can even use the ports that don't throw
this error message.
As in the 2006 thread, unloading the EHCI driver (ehci_hcd) solves the
issue, but is of course not an attractive option as soon as one wants
to use even a USB stick on the same machine.
If it helps, I can give out root access to the box in question to
anybody who is willing to help and debug. Unfortunately, I cannot
provide any expertise here, I do not even know what an interrupt urb is.
Any hints will be appreciated.
Greetings
Marc
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-***@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Greg KH
2008-12-03 15:47:25 UTC
Permalink
Post by Andrew Morton
(cc linux-usb)
Hi,
the following applies to a "vanilla" 2.6.27.7 kernel built and running
on a Debian unstable system.
To obtain out-of-band access to a number of switches and routers, I
have a seven-port USB hub to which seven identical USB-to-serial
adaptors using the PL2303 chip and driver are connected. All seven
work when only one of them is used at a time.
Cereal is an application which keeps a process (GNU screen) attached
to the tty at all times to be able to log what happens on the serial
port. When I start cereal on all seven ports, I start getting
"pl2303_open - failed submitting interrupt urb, error -28" errors in
Dec 2 14:07:36 alemana kernel: pl2303 ttyUSB2: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:37 alemana kernel: pl2303 ttyUSB5: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:38 alemana kernel: pl2303 ttyUSB6: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:41 alemana kernel: pl2303 ttyUSB2: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:43 alemana kernel: pl2303 ttyUSB5: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:43 alemana kernel: pl2303 ttyUSB6: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:47 alemana kernel: pl2303 ttyUSB2: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:48 alemana kernel: pl2303 ttyUSB5: pl2303_open - failed submitting interrupt urb, error -28
Dec 2 14:07:49 alemana kernel: pl2303 ttyUSB6: pl2303_open - failed submitting interrupt urb, error -28
The corresponding ports are not useable in that case.
When one googles for this error message, one finds a thread from 2006
with Greg KH commenting. In my case, the error doesn't hose the USB
subsystem, I can unplug the adapters and plug them in again one and a
time without a problem, and I can even use the ports that don't throw
this error message.
As in the 2006 thread, unloading the EHCI driver (ehci_hcd) solves the
issue, but is of course not an attractive option as soon as one wants
to use even a USB stick on the same machine.
I would suggest using a USB 1.1 hub instead if you have to use this kind
of hardware set up. I think the core is just not able to schedule so
many interrupt urbs with such a setup, running USB 1.1 devices behind a
USB 2.0 hub like this is a very difficult thing to do.

Sorry I don't have a better solution.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-***@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Marc Haber
2008-12-05 12:10:23 UTC
Permalink
Post by Greg KH
I would suggest using a USB 1.1 hub instead if you have to use this kind
of hardware set up.
It is nearly impossible to buy that kind of hardware at the current
time.
Post by Greg KH
I think the core is just not able to schedule so many interrupt urbs
with such a setup, running USB 1.1 devices behind a USB 2.0 hub like
this is a very difficult thing to do.
Sorry I don't have a better solution.
Is it possible to disable USB 2.0 for selected links?

Greetings
Marc
--
-----------------------------------------------------------------------------
Marc Haber | "I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany | lose things." Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature | How to make an American Quilt | Fax: *49 3221 2323190
Alan Stern
2008-12-05 16:03:41 UTC
Permalink
Post by Marc Haber
Post by Greg KH
I would suggest using a USB 1.1 hub instead if you have to use this kind
of hardware set up.
It is nearly impossible to buy that kind of hardware at the current
time.
Post by Greg KH
I think the core is just not able to schedule so many interrupt urbs
with such a setup, running USB 1.1 devices behind a USB 2.0 hub like
this is a very difficult thing to do.
Sorry I don't have a better solution.
Is it possible to disable USB 2.0 for selected links?
Yes it is. You can force port P of the EHCI controller on bus B to run
at low/full speed by doing:

echo P >/sys/class/usb_host/usb_hostB/companion

To allow port P to run at high speed again, use the same command but
write -P instead of P.

Alan Stern
Marc Haber
2008-12-09 20:11:20 UTC
Permalink
Post by Alan Stern
Yes it is. You can force port P of the EHCI controller on bus B to run
echo P >/sys/class/usb_host/usb_hostB/companion
To allow port P to run at high speed again, use the same command but
write -P instead of P.
I will try that and report back.

Greetings
Marc
--
-----------------------------------------------------------------------------
Marc Haber | "I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany | lose things." Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature | How to make an American Quilt | Fax: *49 3221 2323190
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-***@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Marc Haber
2008-12-10 13:43:04 UTC
Permalink
Post by Marc Haber
Post by Alan Stern
Yes it is. You can force port P of the EHCI controller on bus B to run
echo P >/sys/class/usb_host/usb_hostB/companion
To allow port P to run at high speed again, use the same command but
write -P instead of P.
I will try that and report back.
Works fine, thanks!

Greetings
Marc
--
-----------------------------------------------------------------------------
Marc Haber | "I don't trust Computers. They | Mailadresse im Header
Mannheim, Germany | lose things." Winona Ryder | Fon: *49 621 72739834
Nordisch by Nature | How to make an American Quilt | Fax: *49 3221 2323190
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-***@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Loading...