Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
Operating Systems Software Linux

Linus Puts Kibosh On Banning Binary Kernel Modules 494

microbee writes "On LKML's periodic GPL vs. binary kernel module discussion, Andrew Morton hinted that he favors refusing to load binary modules in 12 months. Greg Kroah-Hartman then posted a patch to do exactly that. Surprisingly Linus chimed in and called it 'stupid' and a 'political agenda,' and even compared it with the RIAA's tactics. Later in the same thread Greg withdrew his patch and apologized for not having thought it through."
This discussion has been archived. No new comments can be posted.

Linus Puts Kibosh On Banning Binary Kernel Modules

Comments Filter:
  • by jimstapleton ( 999106 ) on Thursday December 14, 2006 @10:29AM (#17235970) Journal
    This isn't meant to be a troll, but will probably be taken as such, oh well.

    I think he was wrong at simply /I realize nobody is likely going to listen to me/

    It's either false modesty or ignorance [not using the word as an insult]. There are enough people who worship at the altar of Torvolds that no matter what he says, someone will listen. His work has affected a lot of lives to their benefit (directly or indirectly), so it does make a lot of sense.

    And, although I dislike his OS (I use another OSS OS that gurantees at least 1 troll vote whenever I mention it), I do very much agree with his other statements in that article as well.
  • by A beautiful mind ( 821714 ) on Thursday December 14, 2006 @10:31AM (#17236010)
    Because, his RIAA objection is flawed. Using free code that links/attaches into GPL-ed code is the license _requirement_, just like payment is a requirement for RIAA music. It is NOT about telling how to use that certain code as he argues. This is definitely a copyright issue and the RIAA's equivalent would be NOT selling music to someone who didn't pay for it, not the DRM crap.

    If Linus doesn't think that the terms of the license should be uphold because of his convictions, maybe he should have went with a different license in the first place? I think that in retrospect his beliefs are closer to the BSD license than to GPL. That's ok, he's a technically minded engineer. He doesn't have to have an agenda, even if that agenda is keeping freedom. I am generally opposed to practicalism as it focuses on short term, but I can certainly understand that different people have differing opinions.

    One reason is why I'm opposed to the patch is given by Linus though: the closed-source people would just move their proprietary stuff into userspace and communicate with the kernel by a gpl-ed shell in kernelspace. It wouldn't solve the moral problem ("free/open code"), these companies will only open source their drivers when they think it is advantegous for them. A kernel modification will certainly not force them.
  • by Lumpy ( 12016 ) on Thursday December 14, 2006 @10:31AM (#17236012) Homepage
    I understand why those that want to ban binary only modules. It causes hell for everyone on the kernel dev team.

    But.... banning them instantly pisses off every single company that is barely putting out a hardware driver for Linux already (nvidia for example) A ban will not make these people go "oh,ok... we'll release the source code." they will simply flip off all Linux users and tell them to pound sand.
  • Exactly (Score:5, Interesting)

    by rastilin ( 752802 ) on Thursday December 14, 2006 @10:33AM (#17236040)
    I'm already in a situation where most distributions don't even install because the nv drivers they try to load at default won't work on my Geforce 6800. Even the latest vesa drivers seem unbearably slow. If this patch got into the tree, I'd switch to windows the exact same day.
  • Actually reading TFA (Score:3, Interesting)

    by H4x0r Jim Duggan ( 757476 ) on Thursday December 14, 2006 @10:34AM (#17236054) Homepage Journal
    Actually, Linus's comments are not very negative. When he's negative, he capitalises and underscores and asterisk-ises words all over the place, and uses the phrases "NEVER", "fundamental", and "so lets not even talk about it".

    This particular way of blocking proprietary drivers has been withdrawn, but the idea seems to still have support, or at least be open for debate.
  • by Otter ( 3800 ) on Thursday December 14, 2006 @10:39AM (#17236144) Journal
    I'm tired of people thinking they have a right to violate my copyright all the time. I'm tired of people and companies somehow treating our license in ways that are blatantly wrong and feeling fine about it. Because we are a loose band of a lot of individuals, and not a company or legal entity, it seems to give companies the chutzpah to feel that they can get away with violating our license.

    I don't understand -- if he sincerely thinks there are genuine violations of his copyright, he can get a lawyer and do something about it. It's not like there's any shortage of legal representaion available to a linux kernel developer. Locking out all binary modules hardly seems like an appropriate solution.

  • Re:BSD (Score:4, Interesting)

    by kebes ( 861706 ) on Thursday December 14, 2006 @10:51AM (#17236350) Journal
    No, Linus very much agrees with the "quid pro quo" of the GPL. He believes that if you take his code and extend it, you should have to contribute back. He believes in sharing (even if he's not as concerned as RMS is about fundamental freedom). In the linked post Linus says:

    "If people take our code, they'd better behave according to our rules. But we shouldn't have to behave according to the RIAA rules just because we _listen_ to their music. Similarly, nobody should be forced to behave according to our rules just because they _use_ our system."

    Clearly Linus does like the GPL restricting those who would distribute code (whereas BSD causes no restrictions). The point Linus is trying to make is that we have to distinguish between limitations to distribution and limitations to the end user. The proposed patch would mostly have limited the end-user (making it annoying for them to run binary modules). Linus is saying that we shouldn't try to limit the freedom of the end-user with technical restrictions. But (as quoted above) he clearly does like the fact that the GPL forces people who "take the code" to "behave according to the rules."

    Hence Linus would not be happy with a BSD license.
  • Re:BSD (Score:3, Interesting)

    by molarmass192 ( 608071 ) on Thursday December 14, 2006 @11:01AM (#17236542) Homepage Journal
    I disagree, Linus does care about derived works. Much as I admire the altruistic nature of the BSD license, it offers absolutely no protection from derived works. What Linus doesn't care for is imposing the derived work status on non-derived works. To put this in perspective, if Linux is a DVD player, Linus says you have to show any bits you change in the DVD player code, but he's not going to force you to show the bits on the DVDs you play. Personally, I think the BSD license is not a good choice for platform type code, it's too tempting to create an incompatible closed source fork as a competitive advantage. However, I think it's great for application type code, where you don't have this scenario of having rely on potentially closed-source BSD fork to run some software.
  • Re:BSD (Score:3, Interesting)

    by xouumalperxe ( 815707 ) on Thursday December 14, 2006 @11:18AM (#17236832)
    I don't think so. He seems very vocal about the "not imposing limitations to usage" side, but the part where if you use his code you have to share yours seems to be important. I'd sum it up as saying: Linus is happy with the GPL v2 license rather than the GPL v3 one.
  • by cies ( 318343 ) on Thursday December 14, 2006 @11:19AM (#17236848)
    okay in theory one cannot link any binairy blob with the kernel and redistribute it, this is forbidden by the (strong copy-left of the) GPL.
    but if Linus wants to allow this why not put Linux under a license with a weaker copyleft, like the LGPL?

    at the current situation i think the kernel devs are right when they feel the GPL is violated.

    cies breijs.
  • Re:Backpatching (Score:4, Interesting)

    by a.d.trick ( 894813 ) on Thursday December 14, 2006 @11:24AM (#17236966) Homepage

    The point is the message that this brings across. At the moment people are pretty lax about binary dirvers. A ban on them in the vanilla kernel will go a long way in telling the driver vendors to make their specs free or get out of Linux land. Free drivers would be awesome, but I don't know if Linux is strong enough to actually influence the vendors at this point so we might end up with nothing. Plus, implementing this at the code level seems like the wrong place to be doing it. As Linus said, the license ought to control the distribution not the usage.

  • Re:Exactly (Score:3, Interesting)

    by i7dude ( 473077 ) on Thursday December 14, 2006 @11:24AM (#17236970)
    you've taken his statement and reversed it.

    but in this case, he's not upset that there is a lack of hardware to run on his linux box. he's saying that he'd be upset if the kernel maintainers prevented him from using hardware that does run on linux.

    why the hell should he have to try and find hardware that runs on linux when the hardware he presently owns already does run...just not if they merge said patch into the tree.

    for him, switching from linux to windows is not a statement about what hardware run on his box...its about what hardware his box would allow him to run.

  • by halivar ( 535827 ) <bfelger.gmail@com> on Thursday December 14, 2006 @11:30AM (#17237120)
    From another perspective, Linus's algorithm for deciding pragmatism is based on a greedy algorithm - it always spits out answers that look reasonable in the short term. He may be an excellent programmer and good project leader, but he seems to lack a sense of perspective.

    Well, FSF's sense of "long-term" perspective has given them HURD. Linus's "lack" of perspective gives me Working Software Right Now(tm). In the end, that's all businesses really care about.
  • by Total_Wimp ( 564548 ) on Thursday December 14, 2006 @11:32AM (#17237160)
    So I'm a little hazy on this one. If proprietary hardware vendors release proprietary drivers, what exactly is the harm? Sure, it would be nice to have them GPLed so they can be extended, or even trimmed down, but it's not like you're going to need the driver if you don't have the hardware. In the case that the hardware vendor is slow to make Linux drivers, or just decides to not make them at all, the community has created drivers of their own.

    Seriously, this is more a question that a statement. What is the harm to Linux? Whenever I build a Windows machine I find that some drivers are available in the OS due to Microsoft's contracts with hardware vendors, Microsoft has made many of it's own drivers, and some of the drivers must be hand loaded. I'm not sure I understand the problem with this being workable on Linux.

    I understand that it would be difficult to keep up with all these vendors, but that doesn't neccessarily mean we have the right to make them open their proprietary code. Open Source has always been about the community doing for itself what proprietary software vendors wouldn't. I'm not sure I got the memo where we decided that it was about forcing others to not be proprietary. The one is giving, where the other is taking. I feel better about giving.

  • Re:Exactly (Score:3, Interesting)

    by diegocgteleline.es ( 653730 ) on Thursday December 14, 2006 @11:39AM (#17237306)
    why the hell should he have to try and find hardware that runs on linux when the hardware he presently owns already does run...just not if they merge said patch into the tree

    Because lots of lawyers consider such support illegal? If the linux license allowed such things then no kernel developer would oppose to propietary drivers, in the same way they don't oppose to running propietary userspace programs
  • by Goaway ( 82658 ) on Thursday December 14, 2006 @11:47AM (#17237466) Homepage
    Is it part of this bigger picture of yours to not allow people to run certain kinds of code on their computer?
  • by kimvette ( 919543 ) on Thursday December 14, 2006 @11:57AM (#17237660) Homepage Journal
    The harm is this:

    Say you buy an ATI Radeon 917183712. You install the proprietary drivers in x.org 11.92, and they run fine. Then, the Radeon 32648956125 comes out, and new "unified" drivers are released. Only thing wrong: the Radeon 917183712 is still on the market and is still actively distributed, and will remain so for the forseeable future in embedded chipsets (servers and laptops), however, ATI elects to drop support for the Radeon 917183712 in the driver to encourage (force upgrades) to the brand-new Radeon 32648956125 if you want to run x.org 12.78

    OK so the model and version numbers in the above are insane, but this is EXACTLY what ATI has done time and again. They drop support for product which is STILL IN THE CHANNEL (let alone not even obsolete) in their drivers. If the drivers were open source, this would not be an issue and you can run x.org 7.0, 7.1, or 15.0 regardless of whether or not ATI bothers to update it, because the x.org team will keep the famework around the driver updated.
  • Re:Exactly (Score:3, Interesting)

    by rastilin ( 752802 ) on Thursday December 14, 2006 @11:58AM (#17237672)
    I've always wondered about something. If people can't get or release open-source versions of critical drivers, like the drivers Andrew Moreton was complaining about, what are they going to do? Switch? There HAS to be a balance between idealistic views of how the world should be and attention to how the world really is. There are plenty of examples, mostly involving failed government economic initiatives, where people acted according to an idealized version of what they thought the world should be and the situation spun off in a completely unforeseen direction, never to their benefit. In essence, if they DID stamp out all proprietary drivers, in userspace and kernel space. Then what? I may just be cynical but I can't come up with a scenario where nvidia, ati or any of the other companies would take the risk of billions worth of lawsuits, since a suit against the foundations of their designs (probably patented) would cripple a company if it hit, and actually open source their drivers. The users would lose and the viability of linux as an non-server system would take a plunge.
  • by DispassionateObserve ( 540198 ) on Thursday December 14, 2006 @12:05PM (#17237834)

    Not going to happen. NVidia and ATi have stated they couldn't open up the drivers if they wanted to. There's just too much licensed IP they don't have the rights to open.
    We don't have to wait for decent graphics drivers any more! Intel has open drivers!

    Buy a desktop with integrated Intel graphics, slap in an "ADD2" card for DVI LCDs, and you have a fully open-source graphics system.

    It works well for me - maybe not cutting edge video performance, but its not bad - way better than vesa or ati or nv open drivers.

    - Mike
  • Re:Exactly (Score:3, Interesting)

    by Carik ( 205890 ) on Thursday December 14, 2006 @12:30PM (#17238334)
    OK, so you weren't asking me the question. I'm still going to respond to it, and assume it's really not a troll.

    I don't mind running proprietary code in Linux. I run quite a lot of it, actually... I'm using the nVidia drivers right now, and I'm writing this in Opera. There are a few other programs I use that are non-open.

    So what do I get from running Linux instead of Windows? For one thing, I'm not giving money to Microsoft. I bought a computer with no OS, and I'm not running Office. For another, I get stability. Sure, Windows has gotten better. A LOT better, really. And linux is, in my experience, getting worse in some ways. But still, I find that Linux is a lot more stable.

    And what about spyware? Sure, in Windows I can run FireFox or Opera, and make sure I've got good virus and malware scanners, and run AdAware or something like it once a week, but in Linux, I don't mostly have to worry. Are there exploits for problems in linux? Hell yeah! Are people actively attacking them on a massive basis? Well... not that I've heard. Certainly not as much as they're attacking Windows.

    I also like the user environment better. I get better control over what my system does, and I can drop down and use the command line when I want to, since I think it's better for some things. Furthermore, I don't really like any of the Windows SSH clients I've tried. There's nothing WRONG with them, I just don't like the way they look. Konsole, however, suits me perfectly. And since a lot of my job requires running SSH sessions to three or four different systems at once, I'd really rather have a system that I like the look of. Sure, I suppose I could run KDE in X.org/Cygwin, but why would I want to?

    So, to put it more briefly: By not running windows, I get choice, and some level of security.
  • Vista (Score:4, Interesting)

    by Z34107 ( 925136 ) on Thursday December 14, 2006 @01:02PM (#17239072)

    I believe there is a restriction in 64-bit vista that prevents unsigned drivers.

    Nope. There is a restriction in all versions of Vista against using unsigned kernel mode drivers. However, the new Windows Driver Model makes it possible for 99% of drivers (minus graphics drivers) to run in usermode.

    So, you can't run unsigned kernel mode drivers. But, unlike XP, you don't have to run kernel mode drivers - they all run in userspace. Interesting, since this will cut heavily into the profits Microsoft makes from driver signing, but it make the OS a billion times more stable - usermode drivers can't bluescreen. (This is also why there's "hardware compatibility" problems with Vista right now - although the user-mode drivers are easier to write, not everyone has ported their drivers yet.)

  • by squiggleslash ( 241428 ) on Thursday December 14, 2006 @01:14PM (#17239252) Homepage Journal

    But Linus has spoken out in favour of DRM.

    So, let's see: Torvalds is opposed to DRM unless it's actually restricting what you can do with your data. When it's not actually DRM at all, but a means to ensure your operating stays open, modifiable, and auditable, then it's evil.

    This is yet again why Linux needs to be forked.

  • by IamTheRealMike ( 537420 ) on Thursday December 14, 2006 @01:44PM (#17239806)
    I'm afraid the days of drivers being programs that tweaked registers is long gone, my friend. Some of them include advanced optimizing compilers. There's a reason the nvidia driver is nearly the same size as the kernel itself - it's an extremely complex piece of code, with many clever things being done in software.
  • Re:Exactly (Score:2, Interesting)

    by w128jad ( 643759 ) on Thursday December 14, 2006 @01:51PM (#17239928)
    Certainly you're not one of the brave hackers that didn't stop developing linux in the early days despite of the severe lack of drivers.

    These days you can boot linux anywhere. But you know, there was a time (not that far ago) when Linux (and BSDs) didn't support almost anything. Those people really believed in open source, and they didn't mind spending many hours of their life reverse-engineering obscure hardware. They also didn't mind selling their incompatible hardware and buying linux-compatible hardware in order to run their wonderful open source OS.

    And you plan to to switch windows if the linux developers plan to ban propietary modules. You aren't switching your graphics card and buying a linux-compatible one (something you can fix with money). You just plan to switch windows.

    We're lucky that the early open source hackers weren't like you - if they had switched to windows every time they found a barrier we wouldn't have open source operative systems today. Linux has got big without the help of propietary drivers and despite of the ridiculous hardware support and the one way of getting even bigger is following the same path. We don't need propietary drivers, fuck them.

    While I won't abandoning Linux for such a reason, many companies, including the one I work for (which has about 50% Windows and 50% GNU/Linux) might. VMWare, for instance, is an important application for us and is one that requires binary kernel modules to function. All of our VMWare boxes could end up on Windows (God forbid) if this were to happen, or at the very least VMware would fork the kernel for their version of Linux. It is unlikely that such a move would force VMWare's hand and that they would release their code in a GPL compatible way to be included in the kernel.

    I for one agree with Linus. I think the kernel module system is basically a binary interface to the kernel. You aren't linking or run-time linking with the kernel code in the traditional sense. I admit it is very grey-area indeed, as there could be an argument for exactly that with shared-object libraries. But I think we should all agree that at least it isn't the whole-sale selling out of the kernel to allow this grey-area.

    The principled part of me agrees with you, but there are many users of the kernel that weren't here for the early and painful days (when they had to walk both ways to school, up-hill, in the snow, barefoot, you pansies). The community is clearly torn between the RMS types who value the promotion of freedom of free software (such as GNU/Linux) over the promotion of the technology, and those like Linus who err on the pragmatic side for the purpose of promoting the technology.

    I think there is room for both types in our community.
  • by corychristison ( 951993 ) on Thursday December 14, 2006 @04:16PM (#17243110)
    Doesn't VMware Workstation install binary modules into the kernel? For a lot of people VMware Workstation is very necessary from day-to-day use. I know that VMPLayer and GSX server is now free, but Workstation has oh so much power and configurability. Also, locking people out from using an upwards of $500 program is going to piss a lot of people off, such as myself. I'm sure VMware could work their way around it, but right now it does Just Work(tm) and I am very greatful for it.

    I may be going out on a limb here and may not understand completely how Vmware works, but from what I can see from installing it just last night [recently wiped and installed Gentoo over SUSE 9.1] it searches for a module and if it cannot find one that works, it compiles one?

    Please correct me if I am wrong. Half of this comment is a statement and half is a question. :-)
  • by jopet ( 538074 ) on Thursday December 14, 2006 @05:35PM (#17244640) Journal
    A similar situation exists for many printers, printer-fax-copier devices, graphic tables and many other hardware devices.

    In all cases the usual reason given by the companies for not providing a drivers is that they do not want to make the drivers open source and thus expose the inner workings and maybe trade secrets to the general public.

    With wireless drivers there is the additional issue of legal requirements: a driver must not allow, for example, to drive the radio with more than the allowed power.

    Unless LINUX finds a way for companies to provide closed drivers, I do not see too bright a future when it comes to support common hardware devices.

    A similar problem exists when it comes to handling media, but thats a different topic.
  • Re:Exactly (Score:3, Interesting)

    by raddan ( 519638 ) on Thursday December 14, 2006 @10:16PM (#17248484)
    If Linux cost $300 nobody would be running it.

    Right, because we don't think the following things are important:
    • An operating system that runs on an extremely wide variety of hardware
    • A stable and mature TCP/IP stack, transparently integrated into the system via Berkeley sockets
    • Thousands of programmers who submit patches and/or modify the system to do exactly what they want it to do
    • Full POSIX compatibility
    • Real separation of mechanism from policy-- tools can be used in a variety of ways, often in ways not foreseen by the original author
    • A system that doesn't require specialized tools to customize-- every system comes with a text editor and development tools
    • A real, working permissions model-- for some uses, THIS is a dealbreaker, as the GP mentions
    • Multiprocessing is easy
    • Pipes and powerful shell scripting capabilities
    • And so on...
    Linux and other UNIXen are the culmination of years of thought about what makes a good operating system. It's not perfect, but when you reach the point, like I did, when you realize that the only boundary between you and what you want to do in the system is you own knowledge, you realize that an OS like Linux is priceless. I wouldn't hesitate to shell out a thousand bucks for software like that if I had to, and back before "UNIX" wasn't Free, many people did. And even though they are f/Free, I still make a point of donating to my favorite [openbsd.org] projects [gentoo.org] on a regular basis, because I want to make sure that they stick around.

    (The above points are ripped straight out of ESR's The Art of UNIX Programming [catb.org], which was well-worth the $40 for the dead-tree version)

panic: kernel trap (ignored)