User: Password:
|
|
Subscribe / Log in / New account

Sometimes it is depressing

Sometimes it is depressing

Posted Jun 11, 2008 23:58 UTC (Wed) by walken (subscriber, #7089)
In reply to: Sometimes it is depressing by mikov
Parent article: Andrew Morton on kernel development

Eh, I have that chip too.

I don't know if it's got anything to do with linux (my understanding is that the chip asks to
be polled over USB every millisecond, and there are only 1000 frames that can go over the USB
bus by second, so that device won't work if it has to share the USB bus with anything else)

There is an easy workaround: plug this device in a port where it won't have to share the bus
with any other device. I.e. if you have two USB ports on your machine, plug the prolific chip
in one of them and everything else in a hub on the other port.

I had no idea if things are better in windows, I thought it was an issue with the USB device
itself.

BTW, did you try the USB_EHCI_TT_NEWSCHED thing discussed in that thread ?


(Log in to post comments)

Sometimes it is depressing

Posted Jun 12, 2008 0:24 UTC (Thu) by mikov (subscriber, #33179) [Link]

I am fairly certain the problem is not related to sharing the USB bus. I had four of those
converters connected to an ordinary USB hub working 100% reliably, as long as USB 2.0 was
disabled. 

Plus, you can buy a fairly expensive (hundreds of $) multi-port converter which internally is
nothing more than a couple of cascaded USB hubs and pl2303 chips. I hope that they wouldn't be
selling such devices if the underlying chip was fundamentally broken.

Lastly, it all works peachy in Windows.

I tried USB_EHCI_TT_NEWSCHED (it is included in 2.6.22), but it didn't fix it. Alas I didn't
have the chance to dig too deep (and I am not an USB expert, although I have done kernel
programming) - sometimes it took many hours to reproduce the errors, and using USB 1.1 solved
my immediate problem.

When I saw Greg KH's explanation that there are problems in the USB 2.0 implementation known
for for years, I lost my hope of improving the situation constructively. 

Perhaps I should pick it up again. What is the best forum to report this problem ? Apparently
not the kernel Bugzilla ? :-)

Sometimes it is depressing

Posted Jun 12, 2008 3:11 UTC (Thu) by dilinger (subscriber, #2867) [Link]

You'll note the wording GregKH used.. "should be fixed", etc.  Mark Lord had to report back
that it was still broken.  If GregKH actually had the hardware available to reproduce it,
development and fix time would be much quicker.

As far as bugs that are known for years; this is free software.  The only people that are
going to fix it are ones that are either paid to do so, or have an itch to scratch because
their hardware is not working correctly.  The fact that this is a corner case, and has an easy
work around makes it pretty clear why it has taken so long to get it fixed.  I fail to see
what's so depressing.

It's hard enough reproducing bugs when you have the hardware, but not having it available
makes fixing bugs many times more difficult (and kills much of the motivation to do anything
about it).

Sometimes it is depressing

Posted Jun 12, 2008 4:23 UTC (Thu) by mikov (subscriber, #33179) [Link]

I don't think that this is a corner case at all. It is unacceptable to have random devices
fail subtly and quietly when connected to a standard bus. Especially when such a fundamental
and established interface as USB is concerned. 

It is disappointing that the kernel has known bugs of this nature which are not being
addressed. The problem is not so much that my particular device doesn't work. 

The depressing part is that it _really_ is nobody's fault. The development model is what it
is. There is nothing better and there is nothing we can do about it. 

RedHat is not going to pay for fixing this because they don't care about desktops with random
hardware. Canonical is not going to fix it because they don't contribute that much to the
kernel. Nobody is going to pay for fixing it. 

There is nothing to be done. That is depressing.


Sometimes it is depressing

Posted Jun 12, 2008 5:19 UTC (Thu) by dilinger (subscriber, #2867) [Link]

It *is* a corner case.  A device is plugged into a USB1.1-only hub plugged into a USB2 port.
From the thread, my assumption is that the kernel (ehci) thinks 2.0 is supported because the
host supports it, and thus attempts to talk 2.0 to the device.  The hub in the middle screws
things up.  Bypass the USB1.1 hub, and things work just fine.  If that's _not_ what you're
doing, than you are seeing a different bug.

Sometimes it is depressing

Posted Jun 12, 2008 14:15 UTC (Thu) by mikov (subscriber, #33179) [Link]

This is not what is happening. The problem occurs when a USB 1.1 device is plugged into a USB
2.0 hub. AFAICT, this matches the description of the bug referenced in Greg KH's post.

This is a frequent case - there are many USB 1.1 devices, but at the same time all hubs that
can be purchased right now are 2.0.

I suspect that most people are not seeing the problem simply because few people actually use
hubs. Since the problem is subtle - a couple of lost bytes every couple of hours - most people
wouldn't recognize it anyway. 

Sometimes it is depressing

Posted Jun 12, 2008 20:09 UTC (Thu) by nhippi (subscriber, #34640) [Link]

Sometimes it's depressing to see how many posts some people bother to write about their
problems to a random forum, when with the same amount of energy one could have filed a bug in
bugzilla.kernel.org ...

Sometimes it is depressing

Posted Jun 12, 2008 21:22 UTC (Thu) by mikov (subscriber, #33179) [Link]

It is even more depressing when the Slashdot trolls start posting on LWN. 

First of all, this is not some random forum.  Secondly, had you bothered to read the messages,
you'd seen that the bug is already known. Lastly, in case you missed it, the subject is not my
specific problem, but the philosophical futility of reporting bugs in something free.

Incidentally, it appears that you don't even realize how much effort and time it takes to make
a useful bug report. It is ironic that some people find it more acceptable to pollute bugzilla
with useless wining complaints, rather than discussing it in a forum.

Sometimes it is depressing

Posted Jun 13, 2008 17:27 UTC (Fri) by dilinger (subscriber, #2867) [Link]

Once again: no.  The original reporter says that when he plugs the pl2303 device directly into
the USB2.0 hub, it works just fine.  It's only when it goes through a USB1.1 dock/hub that it
fails.

So, once again: YOU ARE TALKING ABOUT SOMETHING COMPLETELY DIFFERENT FROM THE LINK YOU POSTED.

Most people aren't seeing the problem because most USB1.1 devices work just fine in USB2.0
hubs.  The problem described in the link you supplied is a corner case (some weird built-in
serial adapter in a hub/dock thingy).  The problem you've described sounds like it's specific
to some portion of your hardware.

I dug through my hardware pile and found a pl2303.  It works just fine in a USB2.0 port.  If
you want to moan about how depressing kernel development is, that's fine; but claiming that
it's hopeless when you refuse to get involved is just silly.

Sometimes it is depressing

Posted Jun 13, 2008 18:09 UTC (Fri) by mikov (subscriber, #33179) [Link]

Most people aren't seeing the problem because most USB1.1 devices work just fine in USB2.0 hubs. The problem described in the link you supplied is a corner case (some weird built-in serial adapter in a hub/dock thingy). The problem you've described sounds like it's specific to some portion of your hardware.

Sigh. I explained this a couple of times. It is not specific to my hardware. As I already said, I have tested this with several different pl2303 converters, including very expensive ones. I have tested it on different machines with different USB chipsets. I have even tested a couple of different kernel versions. I am not an idiot, you know :-)

The description of the problem is simple and I don't see why I have to keep repeating it over and over. Apparently USB1.1 devices have problems when plugged into USB 2.0 hubs.

I agree that it is not exactly the same thing as described in the linked post, but it looks dangerously similar, and as of 2.6.22 the proposed fix was still marked experimental.

I also agree that it is theoretically possible that only the PL2303 driver has this specific problem. I don't think that is the case though.

I dug through my hardware pile and found a pl2303. It works just fine in a USB2.0 port. If you want to moan about how depressing kernel development is, that's fine; but claiming that it's hopeless when you refuse to get involved is just silly.

See above. If you really want to show me that I don't understand anything, try it with a USB 2.0 hub. Run it for 24 hours checking if there is even a single missed byte in either direction. Then tell me that "it works just fine"

Also, I am not refusing to get involved. Did you also not see one of my posts asking what is a good venue to report this problem ?

I didn't mean to discuss this particular issue in depth. I did not ask for advice on fixing it. I used it just as an example. Apparently not a very good one, because my point did not get through.

In Windows, at least theoretically, either the manufacturer or Microsoft is responsible for doing something if there is a problem. In Linux there is generally no responsibility unless you purchase a support contract which is much more expensive than the price of a copy of Windows. What qualification would you use for this ?

Sometimes it is depressing

Posted Jun 17, 2008 22:21 UTC (Tue) by phiggins (guest, #5605) [Link]

What I find far more depressing is when you've paid a company several million dollars for a
support contract and they still don't fix your bugs (I've seen this happen several times).
Every software project--free or not--has finite developer resources. Some bugs will take a
certain amount of time to fix no matter how many dollars or people are thrown at the issue.
You're making it sound like this problem only exists for Linux when I've seen it far more
often with proprietary software. The problem is fundamental and will not go away, but I've
found Linux to do a better job of handling it than anything else I've seen. It's still not
perfect, but it can't be. The only way you can be guaranteed to get your problem fixed is to
have the ability to fix it yourself. With Linux, you theoretically have that option. With
proprietary software, you don't.


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds