[pvrusb2] /dev/video0: Input/output error problem
Mike Isely
isely at isely.net
Fri Jun 30 16:30:59 CDT 2006
On Fri, 30 Jun 2006, Wim Bakker wrote:
> On Thursday 29 June 2006 23:38, Mike Isely wrote:
>
>> There's also a module option "tolerance" that you can use to make the
>> driver more forgiving of USB errors. Look at www.isely.net/pvrusb2 and
>> drill down to the usage page for more info on this (and a caution). If
>> "tolerance" does help, I'd still like to see if we can figure out exactly
>> what is going on.
>
> Hai
>
> I put :
> options pvrusb2 tolerance=2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
> in my modprobe.conf , and as it looks like now , the I/O errors are
> gone , so this means a messy usb bus? I think it's the sata pci
> card I had to add to be able to use my sata drives, that shares
> interrupt with the usb bus. I will try to find a pata drive, and pull the
> card out and see if I/O errors than stay away without having to set
> the tolerance to 2.
First, save yourself some typing :-) You should only need "tolerance=2".
The extra values are applied when you have multiple devices, and they are
used in order of unit assignment / appearance (so for one device only the
first argument is needed).
Yes, this is strongly suggestive of USB problems for you. However there
is a caution here. What "tolerance" is doing is pasting over the problem;
the problem is still present and it will likely still bite you eventually.
What tolerance does is to tell the driver ignore "N" (where "N" is the
argument value for tolerance) number of consecutive USB packet errors for
just the video streaming. This means two things: (1) There will be a gap
/ corruption in the video stream regardless because once the error happens
data has already been lost, and (2) This does nothing to protect against
errors during control transfers. During streaming the vast majority of
traffic over the cable is video data, but there are still control
transactions taking place at a far lower rate. Eventually your luck will
run out and a control transfer will fail. When that happens,
synchronization with the device will be lost and the driver will give up
on any further communication with the device - your only recovery then
will be the replug the cable or in some extreme cases (depending on what
state the device was in at the point of failure) power cycle the device.
So using "tolerance" will help you but it isn't a solution. If anything,
this is just telling you that you've got a problem affecting the integrity
of the USB traffic in your system.
-Mike
--
| Mike Isely | PGP fingerprint
Spammers Die!! | | 03 54 43 4D 75 E5 CC 92
| isely @ pobox (dot) com | 71 16 01 E2 B5 F5 C1 E8
| |
More information about the pvrusb2
mailing list