4 ms·
I wonder if Linus would consider a stable ABI for kernel drivers these days. Make it stable across one each major version. So much of the kernel source code is
by Flow 10y ago
I wonder if Linus would consider a stable ABI for kernel drivers these days. Make it stable across one each major version.
So much of the kernel source code is driver code. The old approach was always to release the source code for your driver and they'll incorporate it in the major source tree.
WIFI- and GPU-drivers still are very much binary only and don't have source code released.
- hga 10y agoThat would be the quickest way to allow Linux to be supplanted: being able to incorporate its drivers into your own operating system without constant maintenance would allow you to pass what's by far the highest hurdle in gaining acceptance, being able to run on "everyone's" hardware. ADDED: it might also indeed fix one of the biggest problems with Linux on the desk/laptop. For example, in moving through Debian starting with lenny, skipping jessie (systemd) and moving to Ubuntu LTS 14.04, I've had both sound devices and my Wacom tablet stop working and start working again. This was both severely annoying and expensive in the former case (had to buy a $$$ PCIe sound card to cover for inexpensive and utterly standard USB devices to use Skype (or any other VOIP system) and play music)). Still better than Windows, which I abandoned after XP, and still believe was the right move, but....
- digi_owl 10y agoDunno about wacom, but when it comes to sound there are things like pulseaudio that add extra wrinkles to the issue.
- hga 10y agoThat was an USB 1.x issue, had nothing to do with the sound chip behind the USB interface. Yeah, that's right, the kernel crew broke something pretty fundamental in that primarily desktop device driver (servers are going do be doing heavy duty things with USB 2 and above), and nobody noticed and/or cared enough to not ship it with squeeze. That's also the version that broke the Wacom support as I recall, it came back with wheezy or maybe Ubuntu Vivid's kernel. Pulse Audio is pretty awful, but I've always been able to get it to do my bidding, modulo not being able to get the Ubuntu version I'm using to multiplex outputs (I can probably make that happen, it's not a Pulse Audio issue per se I'm pretty sure, but it's just easier to switch output from stereo system to headphones the few times I use Skype).
- digi_owl 10y agoAh yes, USB. Could be the powersave/suspend issue. Iirc, the kernel implemented it as if there was a upper limit on how long the device could take to get ready after a resume. But apparently the time mentioned in the spec was just a suggestion, not a hard limit. And many devices would take a minute or longer to come back once resumed. Lets just say that USB is a "fun" protocol, and the latest addition has not helped much.
- hga 10y agoIt was as I recall a timing/time out issue, and very possibly the one you describe, it would just have to not effect the normal keyboard and mouse USB 1.x devices, and I'm pretty sure these USB 1.x sound devices had much better than "a minute or longer" times in resuming. And, yeah, I can imagine how much of a zoo USB in the real world is....
- digi_owl 10y agoGiven that i have seen one driver work for a multitude of devices (like 20+ different brands of webcams, because they all use the same internals), i think i prefer the current method. The larger problem is the number of "winmodem" style devices. That do as little as possible in hardware, and everything else in the driver. And releasing source code is one thing, but companies like AMD are releasing the interface details that allow others to produce and maintain the driver. The problem there has been third party licenses and patents, particularly as GPUs do more than apply shaders to triangles (video codec acceleration being a big one).