Hello,
On Tuesday 15 July 2003 10:43, Oliver Neukum wrote:
> > Particularly after taking a quick glance at the code
> > and not seeing anything that much cared about nonzero
> > fault codes when the urbs are returned.
>
> Hi nemosoft,
>
> looking at the 2.5 code error handling seems fishy:
>
> if (urb->status != -EINPROGRESS && urb->status != 0) {
> char *errmsg;
>
> errmsg = "Unknown";
> switch(urb->status) {
> case -ENOSR: errmsg = "Buffer error (overrun)";
> break;
> case -EPIPE: errmsg = "Stalled (device not
> responding)"; break;
> case -EOVERFLOW: errmsg = "Babble (bad cable?)"; break;
> case -EPROTO: errmsg = "Bit-stuff error (bad
> cable?)"; break;
> case -EILSEQ: errmsg = "CRC/Timeout"; break;
> case -ETIMEDOUT: errmsg = "NAK (device does not
> respond)"; break;
> }
> Trace(TRACE_FLOW, "pwc_isoc_handler() called with status %d [%s].\n",
> urb->status, errmsg); return;
> }
>
> Judging by this code any such error will mean that the URB is not
> resubmitted. Can this be right?
Well, it's not resubmitted, period. Even at the end of pwc_isoc_handler() no
resubmission is done, at least on 2.4.20. And that seems to work okay.
> Shouldn't there be a goto to this piece of code ?
Goto??!?! Argh! Yuck! Blegh! :-)
>
> urb->dev = pdev->udev;
> i = usb_submit_urb(urb, GFP_ATOMIC);
> if (i != 0)
> Err("Error (%d) re-submitting urb in pwc_isoc_handler.\n", i);
This is for 2.5, right... So that means the URB submission system got
changed back again (Duh...) [I haven't really kept up with all the changes
in 2.5, only checking if the changes made by others don't break my code.
But yes, a resubmission would probably help in this case.
- Nemosoft
-------------------------------------------------------
This SF.net email is sponsored by: VM Ware
With VMware you can run multiple operating systems on a single machine.
WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the
same time. Free trial click here: http://www.vmware.com/wl/offer/345/0
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel