USB OHCI problems...

Barry Bouwsma freebsd-misuser at remove-NOSPAM-to-reply.NOSPAM.dyndns.dk
Wed Oct 20 09:12:57 PDT 2004


Apologies for this posting, as so far as I know it's a known
issue that the USB OHCI code has some problems, or perhaps
that there have been code commits in the last weeks so this
is no longer a problem...

Anyway, under FreeBSD-4 with kernel modules built 10.August
from source that I believe is based on FreeBSD-5-current of
that era, I'm seeing corruption of data read from umass
devices attached to an OHCI controller card.  Use of a UHCI
controller card instead seems mostly free of problems.

In comparison, I accessed the data with NetBSD-current of
similar vintage, and in the files copied with the identical
hardware, the data is intact.

The point at which the corruption begins is at some multiple
of 16384 bytes into the file.  The corruption is not consistent,
as it is less likely to occur when the machine is somewhat idle,
and as the below shows, also occurs at different points into
the same file.

I haven't looked to see for how long this corruption is present
(it's more than a few hundred bytes, at least) or how the file
appears after this, or whether this corruption follows any
particular pattern of the rest of the file.

The below is `cmp' output under my FreeBSD, compared against
the files previously downloaded with NetBSD (and verified that
all the images are intact).

/cdrom/dcim/100dscim/pict0681.jpg pict0681.jpg differ: char 524289, line 2284
/cdrom/dcim/100dscim/pict0683.jpg pict0683.jpg differ: char 507905, line 2116
/cdrom/dcim/100dscim/pict0684.jpg pict0684.jpg differ: char 1163265, line 3323
/cdrom/dcim/100dscim/pict0685.jpg pict0685.jpg differ: char 294913, line 1402
/cdrom/dcim/100dscim/pict0686.jpg pict0686.jpg differ: char 393217, line 1716
/cdrom/dcim/100dscim/pict0687.jpg pict0687.jpg differ: char 753665, line 2606
/cdrom/dcim/100dscim/pict0686.jpg pict0686.jpg differ: char 983041, line 3648

This is just a sample -- note that the last line is the same file
that I had previously `cmp'ed two lines above.

In fairness, the files copied from NetBSD were done with the
machine mostly idle, so I don't know if NetBSD suffers the
same if I were pounding the machine.

If this issue hasn't been handled, perhaps the fact that NetBSD
doesn't seem to have problems might give someone some ideas as
to where the problem might lie.

As usual, apologies for the untimeliness of this, as well as
my lack of detailed testing with fresh -current or with code
fresher than two months ago.


thanks
barry bouwsma



More information about the freebsd-hackers mailing list