Not logged in
Log in now
Create an account
Subscribe to LWN
An unexpected perf feature
LWN.net Weekly Edition for May 16, 2013
A look at the PyPy 2.0 release
PostgreSQL 9.3 beta: Federated databases and more
LWN.net Weekly Edition for May 9, 2013
People in the embedded space don't do prototypes. They hack something until it works, then it's done.
UIO: user-space drivers
Posted May 4, 2007 14:43 UTC (Fri) by nlucas (subscriber, #33793)
This dangerously seems like an atempt to be able to create proprietary drivers and bypass the GPL.
On one hand I understand the good of having user-space drivers, but on the the other hand I don't see how that can be done and not create this loophole.
Posted May 4, 2007 16:11 UTC (Fri) by zlynx (subscriber, #2285)
It depends on if your goal is to write an excellent, open OS kernel or to force all software in the world to become GPL.
Posted May 4, 2007 17:19 UTC (Fri) by nlucas (subscriber, #33793)
The kind of user-space drivers people were doing don't compare with the drivers you will be able to do, even if you probably can't do a user-space graphics driver.
Also note that I'm not a GPL zealot, but I agree with the "doomsday scenario for linux in a binary world" (OTOH I don't buy the "stable API nonsense").
Other than that, I don't have problems running the nvidia drivers at my home PC (the few games I still play need 3D).
Posted Oct 19, 2007 3:22 UTC (Fri) by ofranja (subscriber, #11084)
Companies which do not want their work to become GPL'ed just need to make
a tiny little "wrapper" driver inside the kernel, and then implement
everything that matters in the userspace. In some (not to say many)
scenarios, this approach actually is much better and saner than
implementing everything in the kernel driver.
BTW, one thing "home Linux users" should remember is that Linux is not
strong in the home PCs as it is strong in the server market. Many
companies in that scenario do not care about openess of some driver, as
long as it works and/or you (the seller) fix it in case it breaks.
Sometimes they prefer not having the source code and buy from someone who
is more expensive, because the solution is better and more complete.
IMHO, keeping this UIO infrastructure out of the kernel fearing a "binary
takeover" would be like keeping FUSE out of the kernel fearing
"proprietary filesystems" from taking over Linux: something we should not
be afraid of.
And that's it.
Posted Jun 5, 2007 10:15 UTC (Tue) by hjkoch (subscriber, #45353)
Posted Jul 29, 2007 21:43 UTC (Sun) by vphirric (subscriber, #32877)
Posted Oct 7, 2009 9:55 UTC (Wed) by firstname.lastname@example.org (guest, #38022)
Probably only me, probably because IANAL, but I fail to see how an UIO driver would not be a derivative work of the kernel.
That would obviously be different if this interface was implemented in *BSD, Solaris, Windows... but I do not see that being the intent.
And implementing a GPL layer to connect a non-GPL driver would not change that the non-GPL driver is a derivative work of a GPL driver, which is a derivative work of the kernel.
Now if the law were applied...
Posted Oct 7, 2009 18:28 UTC (Wed) by dlang (✭ supporter ✭, #313)
if it was then every windows program would be derived from windows (after all, what other OS implements those system calls? SAMBA doesn't count as it is explicitly a copy of the windows API)
as such the license of the kernel is irrelevant for UIO simply because it is userspace and is using the defined interface.
Posted Jun 5, 2007 10:01 UTC (Tue) by hjkoch (subscriber, #45353)
Posted Jul 23, 2007 5:54 UTC (Mon) by ringerc (subscriber, #3071)
Some printer drivers are implemented in userspace and are not GPL.
The Samsung monstrosity recently covered by LWN is one such example. Another is the CUPS filter & backend shipped with the Xerox CentreWare suite, which is a living fossil, complete with dropping its self into random bits of /usr .
This issue concerns me too. On one hand, I'd prefer a closed source driver to no driver much of the time. On the other hand, if it's a bad driver it's not much better than no driver at all, and lacking the ability to fix or debug it because it's just a binary blob would be seriously annoying.
Hopefully this won't lead to a large surge in closed source userspace drivers. Still, if it does, at least they'll have to work harder to bring the machine down.
Posted Oct 10, 2007 2:36 UTC (Wed) by Richard_J_Neill (subscriber, #23093)
For example, I bought an expensive ($500) fast 32-bit parallel I/O card 4 years ago, which claimed to have Linux support. This turned out to be "but only on RedHat 7.3 with the default kernel". In the end, we threw out the hardware. Actually, we replaced it with another "Linux-supported" hardware item, called a QuickUSB. This also had only a binary driver, but it used libusb, and we were able to reverse-engineer it to write a GPL-driver. (But it still wasn't good enough in the end).
Posted Oct 6, 2009 9:07 UTC (Tue) by Nisok (guest, #61161)
Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds