LWN: Comments on "Putting a lid on USB power" https://lwn.net/Articles/186331/ This is a special feed containing comments posted to the individual LWN article titled "Putting a lid on USB power". en-us Mon, 20 Oct 2025 09:43:57 +0000 Mon, 20 Oct 2025 09:43:57 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Putting a lid on USB power https://lwn.net/Articles/187869/ https://lwn.net/Articles/187869/ quintesse Well overclocking is a conscious action very difficult to perform by accident, plugging in one too many devices on the other hand is very easy. So the potential in doing damage to your system is much greater. I have a bunch of USB devices, but I have no idea how much juice they need or how much the ports on my system can provide (or should provide according to the specs) so yes I would like my OS to protect my system and my devices.<br> <p> And if attaching network cable that is too long can result in damage to my system I would certainly like the OS to turn off networking!<br> <p> Of course, this being Linux and all I would also expect a way to turn those checks off if you really know what you are doing :-)<br> Thu, 15 Jun 2006 10:38:36 +0000 Putting a lid on USB power https://lwn.net/Articles/187115/ https://lwn.net/Articles/187115/ Frej 1) user plugs in device<br> 2) big fat warnings shows up, explaining the problem, i think people understand electricity :)<br> 3) allow the user to enable the device, maybe readonly?<br> <p> Maybe show the all of the devices on the bus with not enough power.<br> <p> If warning only shows when too much current is drawn, it should not be annoying.<br> Sun, 11 Jun 2006 20:49:17 +0000 Coercing users is *never* a good idea but protecting hardware usually is https://lwn.net/Articles/187082/ https://lwn.net/Articles/187082/ jmayer I always assumed that the power protection was there. It never occurred to me, that Linux was skipping the check. Now I understand that the problems I'm seeing with the USB ports on my laptop is one of broken hardware: ehci worked fine in the beginning, but after I connected a usb-powered harddrive for the first time ehci would work only sometimes. To me it looks like my USB hardware got fried.<br> The correct way to implemnent this is to turn it on to protect the hardware and make it possible to either turn off the check manually (in a global or per device way) or to manually change the powerlevel, e.g. if your hardware works reliably up to 200mW, then why not be able to change the limit to that value.<br> <p> Sun, 11 Jun 2006 11:16:13 +0000 Coercing users is *never* a good idea https://lwn.net/Articles/186990/ https://lwn.net/Articles/186990/ Pedja "But, if I buy a Logitech mouse or keyboard, or a SanDisk USB drive, or some other USB 2.0 "bus powered" device that is properly made and meets the USB 2.0 spec (like a Western Digital 120GB drive), and they *DON'T* work under Linux... that's a *very bad* thing."<br> <p> If I understand corectly, kernel disables out-of-spec devices.So, how <br> can that WD 120GB drive, or any other properly made, by-the-specs, device<br> not work under Linux?<br> IMHO, this is a GoodThing[tm].<br> Why would Linux support badly made hardware? <br> Fri, 09 Jun 2006 21:22:54 +0000 Putting a lid on USB power https://lwn.net/Articles/186881/ https://lwn.net/Articles/186881/ giraffedata I thought the article was saying that Linux knows the capacity of the host USB controller hardware and therefore knows that it is within specs if the USB device is allowed to power up. Otherwise, what is the point of the device telling Linux how much current it needs? Fri, 09 Jun 2006 02:00:27 +0000 Putting a lid on USB power https://lwn.net/Articles/186876/ https://lwn.net/Articles/186876/ ehovland <font class="QuotedText">&gt; What hardware is being run outside its specs?</font><br> <p> I would say that the hub and the USB host controller are the two hardware devices that would be driven to power levels that they were not necessarily specified. Since they were the ones who were suffering the brunt of this issue in older kernels.<br> <p> Although I doubt running the hub beyond power spec is a serious problem, running the usb host controller hardware out of spec could cause no end of problems that may be difficult to diagnose if it is drawing too much power.<br> Thu, 08 Jun 2006 22:43:13 +0000 Putting a lid on USB power https://lwn.net/Articles/186875/ https://lwn.net/Articles/186875/ giraffedata <blockquote> The fact is, however, that running hardware outside of its specifications is always a dangerous thing to do. </blockquote> <p> I guess I didn't follow the explanation. What hardware is being run outside its specs? You have a USB device designed to draw 150 mA. It's the only thing on the USB bus and the host port is designed to supply 500 mA. Linux knows all this and allows the device to join the system. What's wrong with that? <p> Others are talking about losing data. How does the old Linux behavior lose data where the new one doesn't? Thu, 08 Jun 2006 22:12:04 +0000 Coercing users is *never* a good idea https://lwn.net/Articles/186869/ https://lwn.net/Articles/186869/ bjanz "That's right! So buy a $5.00 wall wart. Corrupted data causes farm more damage to reputation than the ability to run hardware outside of specification... doesn't it?"<br> <p> You're missing the point. Someone who is running a device under MS Windows will question *and then abandon* Linux if the same device does *not* run under Linux.<br> <p> If I buy a $5.00 WalMart cheap POS adapter, it'd blow up my system whether I was running MS Windows *or* Linux -- and I deserve what I get. But, if I buy a Logitech mouse or keyboard, or a SanDisk USB drive, or some other USB 2.0 "bus powered" device that is properly made and meets the USB 2.0 spec (like a Western Digital 120GB drive), and they *DON'T* work under Linux... that's a *very bad* thing.<br> <p> This isn't about plugging in crap components. It's about compatibility. The only way to get new users comfortable with Linux is to provide *MORE* compability with existing devices -- not *LESS*. The way to keep "marginal" Linux users from migrating to other platforms (such as FreeBSD, or - Lord help us - Windows) is to be *BETTER* than the other platforms.<br> <p> I opened my comments by saying that standards are a good thing. I'll even say that operating hardware according to standards is an even better thing. Protecting your system from unpredictable power events is an *excellent* thing.<br> <p> But, a *backward* move in compatibility - "less" is NOT "more" - will only be seen as a *bad* thing.<br> Thu, 08 Jun 2006 21:36:41 +0000 Putting a lid on USB power https://lwn.net/Articles/186860/ https://lwn.net/Articles/186860/ cdmiller What next? The kernel checks to see if you are overclocking your processor and refuses to boot? The kernel determines your network cable is too long and disables networking? Why not produce a prominent warning instead of breaking functionality?<br> Thu, 08 Jun 2006 20:42:03 +0000 Coercing users is *never* a good idea https://lwn.net/Articles/186847/ https://lwn.net/Articles/186847/ bronson <i>Hardware is cheap, folks. Much cheaper than a damaged reputation.</i> <p> That's right! So buy a $5.00 wall wart. Corrupted data causes farm more damage to reputation than the ability to run hardware outside of specification... doesn't it? Thu, 08 Jun 2006 19:35:49 +0000 Coercing users is *never* a good idea https://lwn.net/Articles/186779/ https://lwn.net/Articles/186779/ ebirdie Hardware may be cheap, but data put into it isn't.<br> <p> Secondly in my technopolitical experience many people would put data loss under their legitimacy Windows system to law of nature and data loss under a Linux system to untrustable technology, reputation damaged.<br> <p> What comes to political correctness, at times Linux community is blaimed to follow Windows trails. Here I find it responsible as any other act put into fs- and block-layer to protect user's data (ata-drive cache issue comes to mind here). Although I admit, there will be fierce moments of frustration due to policy change unknown or forgotten at the moment of unusable USB-drive.<br> <p> At the moment USB-drive doesn't mount it is very simple and inherent on Linux system to "dmesg | tail" and you are reminded and on your way to make it work. Well, some kernel messages leave space for better glue into the event/issue - at least to mere mortal like me.<br> <p> Previous brings me to GUI, where I haven't yet found a configurable tool (window), which pops up when noticable things hapen in syslog as easily as manually doing "dmesg |tail" thus making a kernel message "usb-core: USB device not connected due to too high power requirement from USB-bus, change kernel policy or connect your USB device to external power." wipe away whole issue.<br> <p> Thu, 08 Jun 2006 16:05:28 +0000 Coercing users is *never* a good idea [Unless they already expect perfection] https://lwn.net/Articles/186802/ https://lwn.net/Articles/186802/ smoogen The issue is that Linux will get the blame either way. The following is a real world example.<br> <p> We had a user who had an external USB drive that got its power off of his laptop along with his keyboard, mouse and LED light so he could work on his red-eye flights on the plane etc. His data got corrupted on the USB drive and it was Linux's fault. Turns out that his data had been corrupted regularly on his Windows side.. but he had come to expect that as a standard Windows bug. Turns out that we had a whole class of users who had been having the same problem with their windows systems, but had found it to be a known bug for the USB drive and just took it as an oh-well. It only became a 'known problem' to central support once Linux started corrupting data.<br> <p> So, if your data is corrupted on your remote USB drive in Windows because it couldnt get enough power.. well thats what 99% of the world has come to expect of Windows. If you have that happen under Linux.. it is Linux's fault because it is supposed to be better.<br> Thu, 08 Jun 2006 15:50:57 +0000 Coercing users is *never* a good idea https://lwn.net/Articles/186739/ https://lwn.net/Articles/186739/ bjanz I agree that standards should be followed as closely as possible.<br> <p> That being said, this change may have one significant "political" factor that seems to have been ignored: if the same device works under MS Windows but doesn't work under Linux, Linux will blamed. Period. And, if one of the myriad of "technology reporters" finds out that he can't use his mouse (the author's example, not mine), the bad news for the Linux community will be hard to overcome.<br> <p> For some of us "road warriors", a way to power our hubs is not always available. But, we still need to use our USB devices. Hence, without commensurate instructions ("scary warnings" *as well as* "what-to-do's"), you may be shutting me down while I'm using my laptop on its internal battery. This is a *VERY BAD THING*.<br> <p> Doing "the right thing" is not always the best thing to do. In this case, the Linux community may have acted exactly the way it claims Microsoft acts: "We know what is good for you -- even better than you do."<br> <p> Me? I'll be writing the necessary UDEV rules to ensure that the devices I'm currently using *continue* to work the way they always have. And, if I "blow out" my hardware, ok. It would have blown out under MS Windows, too.<br> <p> Hardware is cheap, folks. Much cheaper than a damaged reputation.<br> <p> \burt<br> Thu, 08 Jun 2006 12:43:54 +0000 Putting a lid on USB power https://lwn.net/Articles/186659/ https://lwn.net/Articles/186659/ allesfresser I fully support this change--I've always considered powering high-draw mass storage devices over USB to be a foolish and dangerous exercise, and FireWire even more so. Running hardware on a connection that potentially underpowers it is just asking for trouble. And the USB coffee warmer, well, whatever floats your boat I guess but don't blame me if your port burns out.<br> Thu, 08 Jun 2006 02:20:51 +0000