Linked by Thom Holwerda on Fri 23rd Aug 2013 08:37 UTC
Linux

Pretty much for my entire career in Linux USB (eight years now?), we've been complaining about how USB device power management just sucks. We enable auto-suspend for a USB device driver, and find dozens of different USB devices that simply disconnect from the bus when auto-suspend is enabled.

For years, we've blamed those devices for being cheap, crappy, and broken. We talked about blacklists in the kernel, and ripped those out when they got too big. We've talked about whitelists in userspace, but not many distros have time to cultivate such lists.

It turns out it's not always the device's fault.

Fascinating bug.

Thread beginning with comment 570404
To read all comments associated with this story, please click here.
Just being a snarky Windows Developer
by avgalen on Fri 23rd Aug 2013 11:21 UTC
avgalen
Member since:
2010-09-23

So in an open spec and an open source OS it took somebody that has been working on this code for the last 8 year to find this bug.

I will reference this article whenever somebody writes a comment how "all problems would be fixed if MS opened their Office specs, NVidia would open their hardware design and browsers would just follow standards".

Software development is REALLY hard and tiny things can go unnoticed for a very long time until somebody finally sees the light. I hope USB-devices will soon work better on Linux than they do today

Reply Score: 7

JAlexoid Member since:
2009-05-19

So in an open spec and an open source OS it took somebody that has been working on this code for the last 8 year to find this bug.

No. It was just the attitude of snarky Linux developers.

Let alone a snarky Windows developer might want to read through the post, before spouting ignorance and schadenfreude.

Edited 2013-08-23 11:54 UTC

Reply Parent Score: 0

avgalen Member since:
2010-09-23

This snarky Windows Developer DID read through the entire post, and the comments. That is where he read about all the problems this is causing for users, how someone solved the problem by using a Mac where USB "just works" and where someone posts that in the Windows driver a timeout of 10ms works just fine.

This snarky Windows Developer also read about all the workarounds that have been discussed and deployed to fix this problem previously (blacklists that grew out of proportions, whitelists that wouldn't be maintained)

I did enjoy the schadenfreude although I don't know why. Mostly I am happy this will (soon, hopefully) solve the problems of many endusers

P.S. I am just a developer that uses .NET. I am not "developing Windows". I do have to defend Windows as a closed platform because I keep hearing "x is open source so everyone can look at the code and fix things but they cannot fix this because it is closed" which irritates me a lot

Reply Parent Score: 2

Radio Member since:
2009-06-20

I will reference this article whenever somebody writes a comment how "all problems would be fixed if MS opened their Office specs, NVidia would open their hardware design and browsers would just follow standards".

You can use this article. But only if you can then explain why keeping the source closed helps to avoid a situation such as the Linux USB bug.

Go on. I'm very interested.

Reply Parent Score: 1

avgalen Member since:
2010-09-23

You can use this article. But only if you can then explain why keeping the source closed helps to avoid a situation such as the Linux USB bug.

Go on. I'm very interested.

I can use this article, with or without your permission and with or without explaining your false premise.

Code/Product quality has nothing to do with open or closed source. Problems don't go away when things are open or closed. Problems like this go away when an expert tries very hard to solve a problem and eventually finds it and fixes it.
In this case closed source (OsX and Windows) read the same spec years ago but wrote better working code.
The open source code and spec were available for everyone all the time but it took this long to get the problem found and (soon, hopefully) fixed

Reply Parent Score: 5

BallmerKnowsBest Member since:
2008-06-02

"I will reference this article whenever somebody writes a comment how "all problems would be fixed if MS opened their Office specs, NVidia would open their hardware design and browsers would just follow standards".

You can use this article. But only if you can then explain why keeping the source closed helps to avoid a situation such as the Linux USB bug.

Go on. I'm very interested.
"

Durrrr... except for the minor detail that he never actually made that claim in the first place. Do you have trouble with reading comprehension in general, or was that a deliberate attempt to setup a strawman?

Go on. I'm very interested.

Edited 2013-08-23 16:42 UTC

Reply Parent Score: 3

Bill Shooter of Bul Member since:
2006-07-14

No, IMHO, the problem was in the spec. It defined a timeout value that was interpreted as a minimum by hardware developers and a maximum by software developers. Reading the spec and the code side by side, you probably wouldn't ever notice the problem.

This is something that only could have been caught with testing for this issue on a wide variety of hardware ( which is how it was caught). This is one of the weaknesses of linux, especially desktop linux, IMHO. It still happens with Windows, but more rarely. My brother's desktop runs ubuntu because windows isn't stable on the hardware ;)

Reply Parent Score: 4

zima Member since:
2005-07-06

If there's something so wrong with hardware that current Windows releases are unstable, using Linux might be still risky... (for data integrity for example)

Reply Parent Score: 2

BallmerKnowsBest Member since:
2008-06-02

So in an open spec and an open source OS it took somebody that has been working on this code for the last 8 year to find this bug.

I will reference this article whenever somebody writes a comment how "all problems would be fixed if MS opened their Office specs, NVidia would open their hardware design and browsers would just follow standards".


Clearly you're just a troll. Or a shill for Micro$$$$oft. Or you don't understand the issue. Or you didn't read the article. Or you're using the wrong distro. Or you should submit a bug report. Or you should fix the problem yourself and submit a patch.

Hmmm, odd - none of the standard excuses really seem to apply here... not to worry, though, the gist is that open source is a magical cure-all and if you have an issue with it, then it must be your fault (somehow...).

Now that you have seen the error of your ways, you will no doubt a life-long open source advocate. Because, after all, a barrage of talking-point personal attacks is obviously the most effective way to convince someone to change their position.

Reply Parent Score: 5