Slashdot Mirror


Vanishing Features Of The 2.6 Kernel

chromatic writes "Jerry Cooperstein has written an excellent article summarizing the features removed from the upcoming 2.6 kernel. One controversial change may be tightening restrictions on binary-only modules." And Lovechild writes with some more 2.6 news: "I recently did an inteview with famous kernel hacker extraordinare and all round nice guy Robert M. Love for Tinyminds.org, about kernel 2.6 and what can be expected for desktop Linux users, when the new kernel series is released.

50 of 357 comments (clear)

  1. oh the irony by rainman31415 · · Score: 4, Funny

    hopefully there wont be anything in the kernel related to the advertising. M$ .net sdeems to be paying for this article....


    bite me
    rainman

  2. They aren't gone! by jlharris_50010 · · Score: 5, Insightful

    Nothing's vanished... just not included... now you too can learn to kernel hack!

  3. Binary modules by IamTheRealMike · · Score: 5, Informative
    Could somebody sum up the pros/cons of binary modules. I've been trying to understand this issue for some time, but it's nearly impossible to get technical reasons without ideological bias. So far I have:

    Pros:

    • Commercial interests are happy because they keep trade secrets they may need to stay in business
    • Better drivers (usually)
    • Patented tech can be used in Linux, like that nVidia texture compression thing (i don't think all patents are stupid).

    Cons:

    • Makes kernel harder to debug
    • Sticky GPL enforcenment issues
    • Some kernel developers don't like it
    • Often come with stupid licensing, ie nVidia - you can't distribute our drivers, only download them (and then no psyche rpms).

    Have the kernel devs decided whether they are good or not?

    1. Re:Binary modules by Otter · · Score: 5, Informative
      Cons:

      As a PowerPC Linux user, I'd add that they're rarely made available for non-x86 architectures.

    2. Re:Binary modules by crow · · Score: 5, Interesting

      You left off one major con:

      Binary-only modules must be updated by the vendor when the kernel interface changes.

      If we must have binary-only modules, I like how Cisco did it for their VPN software: you compile a small wrapper function with a provided library file to generate the module. That way you can generate one specific to your kernel version.

    3. Re:Binary modules by bbk · · Score: 4, Informative

      I've always heard it stated as a debugging issue - if a bunch of people send in bug reports saying "Kernel 2.x.x is broken", and they're using a binary only module, how do the linux developers know the problem is with the kernel, and not with the binary module? To aid in debugging, they put limits on what binary only drivers can do, which narrows the range of problems.

      I think it makes a good deal of sense, from a linux developer standpoint - they all have their own reasons to work on linux, and answering bogus bug reports caused by faulty binary modules cuts time from other development tasks.

      BBK

    4. Re:Binary modules by Reality+Master+101 · · Score: 3, Insightful

      At the risk of this sounding like flamebait, it's about power and control.

      There are people who think you should not be able to download a binary-only module and use it with a GPL program. Note that I say you, and not the creators of the programs themselves. The binary only creators are not using any GPL code. The GPL code is not using the binary. It's the combination of the two that many will tell you is a "sticky area".

      It's exactly the same as if Microsoft changed the Windows license to say you could not run any GPL programs under the Windows operating system. Imagine the screaming that would take place if they tried that.

      I think a lot of people need to get a grip and just mind their own business. If you don't want binary-only software on your computer, then don't do it. But don't presume to tell me what software I can or can't run on my computer.

      Now, it's valid to worry about whether I'm redidistributing software according to the license. But if I follow each individual software's license, then leave me alone.

      --
      Sometimes it's best to just let stupid people be stupid.
    5. Re:Binary modules by IamTheRealMike · · Score: 5, Insightful

      Why does the kernel module interface change so often though? I mean, surely there are only so many ways to write a mouse driver

    6. Re:Binary modules by kasperd · · Score: 3, Interesting

      You left off one major con:
      Binary-only modules must be updated by the vendor when the kernel interface changes.


      That is not just a major con, it is probably the most important of all cons.

      you compile a small wrapper function with a provided library file to generate the module. That way you can generate one specific to your kernel version.

      Hasn't something similar been done for gfx drivers as well?

      --

      Do you care about the security of your wireless mouse?
    7. Re:Binary modules by kawika · · Score: 3

      It's certainly possible to make good interfaces to facilitate debugging binary-only code. Most likely the kernel developers have decided that their time is better spent in other places, rather than making life easier for the binary-only module developers. =That decision is made easier by open source bias, of course, and the lack of a large user constituency that would be intolerant of breaking old apps.

      If Linux ever becomes a mass-market operating system, the kernel developers are going to have to reprioritize things. Imagine telling a company with 10,000 Linux desktops that they would have to fix, recompile, retest, and redeploy a major in-house app because a deprecated kernel interface had been removed. Linux can make these kind of changes only because it's not yet mainstream.

    8. Re:Binary modules by kasperd · · Score: 5, Informative

      Why does the kernel module interface change so often though? I mean, surely there are only so many ways to write a mouse driver

      The mouse driver is one of the simplest drivers, and most of the stuff is done in usermode anyway. But a changing interface doesn't mean that each and every piece of the interface changes, it just means that the overall interface has changed in some way.

      It doesn't take much to make a change in the binary interface, a small change of a .h file will do. In fact even changing just a kernel configuration option could change the binary interface. The API on source level is however more stable. It doesn't change that often, and it doesn't change in unpredictable ways by modifying something completely unrelated to what you are writing. This API has been kept almost unchanged all the way through the 2.4 series.

      --

      Do you care about the security of your wireless mouse?
    9. Re:Binary modules by vinsci · · Score: 5, Informative
      It's exactly the same as if Microsoft changed the Windows license to say you could not run any GPL programs under the Windows operating system. Imagine the screaming that would take place if they tried that.

      Microsoft are busy working on just this and it's much worse than you would imagine. See the TCPA/Palladium FAQ.

      Translations: German, Spanish, Italian, Dutch, Chinese, Norwegian, Swedish, Finnish, Hebrew and French

      --

      Trusted Computing FAQ | Free Dawit Isaak!
    10. Re:Binary modules by Vellmont · · Score: 3, Insightful

      Yes. Nvidia did this for the Nforce drivers, and I believe for the GeForce drivers. This doesn't always solve the problem though. The RedHat 8 kernel (and I'm assuming other new distributions) was compiled with gcc 3.2, while the binary library Nvidia provides was compiled with gcc 2.95. Having kernel modules and the rest of your kernel compiled with major revision changes can cause problems, and inmod will refuse to load this module unless you use the force option. The end result is incompatibility until the Nvidia gets around to simply re-compiling the module with gcc3.2 (or you're technical enough to know to how to use the --force option with insmod, and are willing to take the risk it breaks something)

      It's true that providing a binary library and a wrapper is a better solution than a completely closed binary, but there are still some large problems with this approach.

      --
      AccountKiller
    11. Re:Binary modules by vinsci · · Score: 5, Insightful
      No, they aren't. Palladium will NEVER stop you from running unsigned code. Never. Ever.

      So what if Palladium lets your GPL program run, it wouldn't matter at all. This is because your GPL program will not be able, or rather allowed to, access the Palladium infrastructure in order to get the needed cryptographic credentials to perform certain tasks. So yes, your program will run, but no, it won't be able to do anything useful for you, not for anything that requires access to Palladium. And that would be mission completed for Microsoft: GPL software rendered useless.

      The easily fooled will probably be glad to hear that the full source code to Palladium will likely be made available. Again, the source code is as powerless as your GPL program, and is of no use to you - even with the source, you can not make modifications to it and run the modified version in place of the version endorsed by Microsoft.

      Furthermore, Microsoft already has a license in place that exludes open source development and specifically GPL and LGPL open source, see this article by Bruce Perens

      Yes, there are people who are LYING about Palladium. Yes, LYING.

      If you are aware of any lie in Ross Anderson's TCPA/Palladium FAQ, please state what it is.

      --

      Trusted Computing FAQ | Free Dawit Isaak!
    12. Re:Binary modules by Daniel+Phillips · · Score: 4, Insightful

      It's exactly the same as if Microsoft changed the Windows license to say you could not run any GPL programs under the Windows operating system.

      No, it's not. There is no restriction whatsoever in running any kind of application you want under Linux. Did you ignore the distinction between kernel and user mode intentionally?

      It's more like Microsoft changing the Windows license to disallow any GPL code in the Windows kernel. Oh wait...

      --
      Have you got your LWN subscription yet?
    13. Re:Binary modules by __aaahtg7394 · · Score: 5, Insightful

      If you have 10k desktops and your IT guy/gal/team
      1. doesn't have an automated system to push updates, or
      2. decides you need to upgrade to a new kernel for no apparent reason (security updates are almost universally backported), or is unable to do the kernel patching to fix things themselves, or
      3. you have software that's somehow hacked into the kernel on desktops but you don't have the source to,

      you're fucked. Start writing your resignation letter, you totally blew it for anyone you're responsible to. Hope you weren't there too long so you can put it on your resume as a hiatus.

      Linux doesn't have to worry about backwards ABI compatibility because most vendors use the API instead...

    14. Re:Binary modules by vinsci · · Score: 4, Insightful
      That document is a load of scare mongering [...]

      ...but it is a document which the inventor of TCPA himself, Bill Arbaugh, seem to agree with. He opens his comment on Ross Anderson with this statement:

      "We are all aware of the criticisms that the TCPA has received. Ross Anderson did a good job of explaining the problems in an abstract fashion, but I felt that there were some things left out (Privacy concerns)." (my emphasis).

      You write:

      And I don't care if he uses words like "could" or "may" or any other wishy-washy term.

      The rest of your comment, "Reality Master 101", builds on ignoring what Anderson is actually saying and is thus just a straw man argument, with which you have apparently fooled yourself.

      --

      Trusted Computing FAQ | Free Dawit Isaak!
  4. Arrogance by rossz · · Score: 5, Insightful
    This may very well break some rather expensive commercial Linux products, but that doesn't seem to bother most kernel developers. Reminding the purveyors of binary modules that they continue to operate at the pleasure of the Linux kernel developers and their open-source licenses is seen to be a necessary (even enjoyable) task.
    What an arrogant attitude. The kernel developers need to be reminded that widespread acceptance of Linux might very well require the support of big commercial enterprises, not just hobbiests and open source enthusiasts. Few companies are going to make major investments in Linux if they have to deal with prima donna programmers who love fucking with them.

    --
    -- Will program for bandwidth
    1. Re:Arrogance by pclminion · · Score: 4, Insightful
      What an arrogant attitude. The kernel developers need to be reminded that widespread acceptance of Linux might very well require the support of big commercial enterprises, not just hobbiests and open source enthusiasts

      If you read over the LKML mailing list archives, it will become quite clear to you that the kernel developers don't give a cold shit in hell about user requests or complaints. They do what they want, and fuck everyone else.

      At least, that was the sense I got from the conversation..

    2. Re:Arrogance by silvaran · · Score: 5, Insightful

      How about you go branch your own Linux kernel tree and add code back in that better supports binary-only modules? It's their tree, they can do what they want. If Red Hat doesn't like it, they can maintain their own tree (which they do). If nVidia doesn't like it, they can do likewise.

      After all the hard work of the kernel folks, you seem to expect them to be perfectly happy with having to support binary modules that they can't debug, and that fall in a grey area of the GPL.

      How about you go create your own open-source project. Then I'll go create some hardware, and keep all the information proprietary. To tease you a bit, I'll keep all information about my hardware proprietary, so you have two choices:

      1) Reverse engineer my hardware and write your own software.
      2) Indicate to me that your software is valuable, and depends on my hardware, until you convince me to release sources so they'll work better with your software.

      That's the position nVidia's in. They've got one of the most widely-used video cards on the market. And the only way to use that video card effectively under Linux is to use their binary-only drivers. Get a clue. Linux doesn't belong to commercial entities any more than it belongs to Linus. What you do with your kernel tree is your own business.

    3. Re:Arrogance by bbk · · Score: 3, Insightful

      Last time I checked, linux was a homebrew project by Linus. He gets to do what he wants with it - he's not even paid to write it. His time is valuable, and wasting it debugging binary modules isn't productive.

      Corporations that write binary modules are only allowed to write them by Linus' good graces - normally, the GPL doesn't allow for non-source availible binaries to be linked into GPL code in the manner that kernel modules are added.

      Corporations should be happy they are allowed the level of integration that linux gives them, as they get an exemption (no-GPL) from the rules. They are also free to switch to the BSD's any time they want, which lacks many of the GPL's problems.

      BBK

    4. Re:Arrogance by Subcarrier · · Score: 5, Insightful

      What an arrogant attitude.

      Arrogance indeed. Users are so used to being customers that they don't know when they are receiving a gift.

      It's weird how, after over ten years, many people still don't get Linux. Every single Linux developer does what he does does because he gets something out of it. Not because he want's you to get something out of it. That's the beauty of the GPL. It guarantees that everyone can do what they want with the code, as long as they give others the same courtesy.

      If you want something, just do it. If you can't, find a way to motivate someone to do it for you. You have the same rights as everyone else, no more, no less.

      --
      "I have opinions of my own, strong opinions, but I don't always agree with them." -- George H. W. Bush
    5. Re:Arrogance by finkployd · · Score: 4, Insightful

      Perhaps, but they sure produce a great product with these attitudes...

      Finkployd

    6. Re:Arrogance by IamTheRealMike · · Score: 3, Insightful
      Messing with them just because "you can" just doesn't seem like good diplomacy.

      Is that what you think? That's hardly how things are, it's not like Linus sits in his dark tower, steeples his fingers and says "Today, I think I shall once again break binary compatability to screw over nVidia.. bwhahahahaha".

      When they break kernel interfaces, it's to make a better kernel. If they didn't, those parts of the kernel would effectively be frozen in time, and the kernel woudln't move forward, it'd get more crufty and less reliable. We'd all suffer, just so binary driver producers don't have to recompile their drivers. Doesn't sound like a good tradeoff to me.

    7. Re:Arrogance by MisterFancypants · · Score: 3, Insightful
      If Red Hat doesn't like it, they can maintain their own tree (which they do). If nVidia doesn't like it, they can do likewise.

      The problem is nvidia (and I use nvidia simply as an example, this applies to many others) WON'T, since unlike Red Hat, having a Linux kernel branch is very tangential to their real business. There are a number of companies that offer Linux support simply as a goodwill gesture, or at most for an extra bit of PR, despite the fact that the limited Linux support they do offer isn't really a good return on investment (just like id games for Linux aren't a good ROI but id releases them anyway for their own reasons). Anything the kernel developers do to make it harder for these folks to support Linux will mean less Linux support from hardware makers, which will make the much-vaunted Linux desktop push stillborn. If that's what the kernel developers want to do, that's fine. As you said, it is their code... But then they can't go crying later when everyone drops their Linux support.

    8. Re:Arrogance by Waffle+Iron · · Score: 3, Insightful
      normally, the GPL doesn't allow for non-source availible binaries to be linked into GPL code in the manner that kernel modules are added.

      The GPL does not stop you from linking binary only code to GPLed code. Nor does it stop you from distributing your own binary-only code that can be linked to GPLed code. It only stops you from redistributing someone else's GPLed code which is linked to your binary-only code.

      This is because the GPL puts no restrictions on the use of GPLed code, only on the redistribution of it. If you don't distribute the GPLed code, you can't violate the GPL. As long as a company that writes binary modules doesn't distribute the Linux kernel, there is no way that they can be in violation of the GPL.

      The end user can link the binary module to the Linux kernel and use it. The end user can't redistribute this combo, however.

  5. Just great... by xchino · · Score: 5, Informative

    I am an op in a Linux support channel on IRC, and I always dread new rleases of both kernels and redhat. It never fails.. some noobie comes in *demanding* we help him fix the production mail server he just trashed by installing RH8 or the newest kernel (dev or otherwise).

    For anyone out there who is just waiting and drooling on themselves over 2.6, unless you NEED one of the few features present in a new kernel, you have no need to upgrade. The latest isn't always the greatest, and even "stable" releases need to go through testing before you put them in production.

    --
    Everyone is entitled to their own opinion. It's just that yours is stupid.
  6. It's open source, damnit! by europrobe · · Score: 5, Insightful

    If non-GPL companies feel they can require users to install binary-only modules, why not simply requiring them to apply a kernel patch to remove this new limitation first?

    Or, better still, why not delivering the whole product with an installer doing all this for them? It's not going to break GPL, as long as they publish the source code for the patch itself, which should be trivial.

    I'm all for GPL, but this is not going to make that big an impact.

    --
    Score:-1, Wrong
  7. Are they nuts? by I+Am+The+Owl · · Score: 5, Interesting
    This may very well break some rather expensive commercial Linux products, but that doesn't seem to bother most kernel developers. Reminding the purveyors of binary modules that they continue to operate at the pleasure of the Linux kernel developers and their open-source licenses is seen to be a necessary (even enjoyable) task.

    See also: quickest way to discourage commercial development on your platform.

    Gee, do you think all these corporations who have been embracing Linux in these past few years will still be using it when they can no longer use their expensive software investments with it? I doubt there are reasonable open source alternatives for most of these applications, like video card drivers or movie production applications, for example. Good luck on getting more people to adopt your platform after that.

    I forsee a massive move to FreeBSD if this bullshit continues.

    --

    --sdem
    1. Re:Are they nuts? by finkployd · · Score: 3, Informative

      Note: this really only applies to drivers, not applications.

      Finkployd

  8. Reiser4? by Dionysus · · Score: 4, Interesting

    Anyone know if Reiserfs4 got into the 2.6 release? I think I read Reiser had been pushing Linus to include Reiser4, and from what I've read in LinuxJournal, Reiser4 supposed to be 2-3 times faster than Reiser3.

    --
    Je ne parle pas francais.
    1. Re:Reiser4? by kryps · · Score: 3, Informative

      Reiser4 is currently in 2.5, which should drift over to 2.6 assuming it doesn't screw up big time mid-transition.

      What have you been smoking? Reiser4 has *not* been integrated into 2.5. Judging from discussion on their mailing list and the available documents on their site it is currently in a very early alpha state (i.e. data loss is to be expected). Since adding a new filesystem is not a very intrusive change it might still get added now after the features freeze maybe even in the (early) 2.6 series but not before it becomes quite a bit more mature.

      Adding alpha-quality filesystem to a mainline kernel does not really help anyone.

      -- kryps

  9. Best solution by nuggz · · Score: 3, Interesting

    The best solution depends on your point of view.

    For some technical correctness is a primary goal, in Linux this means that sometimes features and interfaces change.

    This may tend to piss of some, but you end up with a technically superior product.

    For others consistency of interfaces may be most important and technical correctness is secondary.
    This tends to generate lots of legacy crap, we see this in MS Windows. Now they're cleaning up, and we have the compatibility problems.

    There is always a tradeoff. But I think a well documented technically good solution is best.

  10. Derivative works. by OoSync · · Score: 4, Insightful
    I think the position the kernel developers are in is determining exactly what is a derivative work. In any other GPL piece of code, if you muddle with the inner workings of the code, then your code is a derivative work and must also be GPL if you release it. Well, according to this article, most modules fiddle with the inner workings of the kernel in a very intimate way. The logic follows that such code is a derivative work (i.e. it has to use kernel code to do such things) and must be GPL, which binary-only modules violate. This isn't about doing away with binary-only modules, its about clarifying the Linux kernel's license and enforcing it. Binary-only modules can still run, they are just restricted in what interfaces they can use to communicate with the kernel instead of being on intimate terms with GPL modules. Sounds fair. Furthermore, its the *legal* thing to do.



    As other posters have already specified, you can distribute your own kernel or patch that doesn't enforce the GPL license, but in doing so you may indeed be violating the GPL yourself. Remember, the GPL is like any other license, you must abide by it or lose the privelidge of using the software.



    Also, this does not break userspace (i.e. proprietary and binary-only applications), unless such software is dependent on a binary-only module.



    I, for one, am curious to see how those people who really want to distribute binary modules will react. I think many have a market in Linux systems and will continue to provide their code. However, they may be well-served to develop a GPL module that provides very consistent interfaces for binary-only modules. The kernel developers don't want to do this, but if developers of binary-only modules develop it and apply it, well that's their business.

    --

    I always get the shakes before a drop.
  11. Re:the mighty slashdot effect killed TinyMinds by dubious9 · · Score: 5, Funny

    Jesus, give me some whitespace! At least a
    here and there.

    See how nice this looks?

    Even if you make good points, nobody is going to read a long post with no whitespace.

    --
    Why, o why must the sky fall when I've learned to fly?
  12. Drivers please by visualight · · Score: 5, Insightful

    When a new product comes out on the market, the box almost always includes a cd with a windows driver on it. That driver is written and supported by the manufacturer of the product.

    I love linux but I want so bad to be able to buy the latest neates thing and have it just work right away in linux and not a year later. Right now I have a radeon 9000 pro and a wintv pvr 250 I'm struggling with.

    Drivers are the ONLY issue I have with linux and because of that I'm trying to learn C but I have so far to go and in the meantime I have to just be patient and wait for the vendor to produce a driver or for some linux developer go buy the same card I have and make it work. That's all fine and dandy except for this one thing: Some of these kernel developers are PAID to develop the linux kernel. That's right, it's their JOB. Not to show any disrespect to those kind hearted souls who sacrifice their spare time to do a community service, but as an enduser who has paid far far more for linux distro's than I ever would have paid if I was using Windows I have a right to insist on support for ME the end user. I have purchased Redhat 7.1, Mandrake 8.2,9.0 and every Suse since 6.2. It's my opinion that the kernel developer employed by the distro's have an obligation to develop the linux kernel with me in mind. And I want drivers. I don't care if they're GPL or not. I want hardware vendors to write the driver for the hardware they sell and distribute that driver WITH the hardware. And I want that driver to just work. That means the linux kernel must allow it to work. Politics and personal philosophy regarding open source have nothing to do with the discussion. I'm a paying customer and I should be treated that way.

    --
    Samsung took back my unlocked bootloader because Google wants me to rent movies. They're both evil.
    1. Re:Drivers please by mcelrath · · Score: 4, Interesting
      That driver is written and supported by the manufacturer of the product.
      This is almost universally a bad way to do it. It results in crappy drivers and poor user support (companies only want to sell you shit...after you buy it they don't really care if you can't get the driver to work). This is the source of 99% of the instability of Windoze...crappy drivers that bring the system down.

      Back in the day there was this company called WordPerfect. Their schtick was that there were thousands of printers, but no universal way to get shit printed. So they wrote printer drivers, for all of them, and they were fantastic. WordPerfect quickly took over the market because they wrote printer drivers. They knew how the printers would be used and figured the best way to access them, and were motivated to maintain the whole base of drivers.

      Open source drivers are much the same way. Owners of hardware have a pretty serious motivation to make the drivers work. You also get higher quality drivers because of the many-eyeball effect. The best situation for customers and companies alike is for the companies to release a "beta" driver, detailed specs, and hire one guy to coordinate work on the driver. Then let the thing evolve. It's the beauty of the source.

      "Source code is like manure, if you spread it around things grow. If you hoarde it, it just smells bad."

      -- Bob

      --
      1^2=1; (-1)^2=1; 1^2=(-1)^2; 1=-1; 1=0.
    2. Re:Drivers please by Cyno · · Score: 3, Interesting

      I never fully understood the bias against binary drivers until I read this article, if its the same one I read earlier. In it they mentioned that binary kernel modules have access to override system calls as well as make use of GPL system calls, etc. The recent changes will prevent this from happening in the future by limitting the access non-GPL drivers have, limitting which system calls they care override, etc. Security, especially against close-source commercial software that may not have my best interests at heart, makes me happy. I love linux. :)

  13. Re:Beggers can't be choosers by pclminion · · Score: 5, Interesting
    You can use the old kernel, you can use the new kernel, you can use your own kernel. Everyone can make whatever they want.

    Untrue. Most people are incapable of hacking kernel code, or any kind of code.

    The kernel developers can use their abilities and positions to essentially blackmail the user base. New hardware drivers aren't usually backported to older kernels, so in order to get modern support for most things you have to run the latest. Want to run on modern hardware? You have to upgrade to a new kernel, with a new license, new restrictions, etc.

    They don't owe you anything.

    This is hilarious. You know, I once posted a rant on LKML about some particular issue (details unimportant). I essentially said that if it wasn't addressed, I might consider moving to BeOS (which was looking very good to me at the time). I have the freedom to make that choice, right? They don't OWE me anything, right? So clearly I most not owe THEM anything.

    But I got several responses accusing me of BLACKMAIL, saying that I was "threatening" to move to BeOS in order to force someone to do something.

    I could understand if there was some disagreement on a technical point, but by that point the conversation had degenerated into a flamethrowing competition between Andre Hendrick and the rest of the list. I was the only guy backing up Hendrick.

    Anyway, I know from experience that many kernel developers are elitist, arrogant people. I guess they think that because their code runs in Ring 0 they must be somehow superior to the rest of us.

  14. Wow by MeanMF · · Score: 3, Interesting

    Most observers foresee a tightening of the limits on binary modules. This may very well break some rather expensive commercial Linux products, but that doesn't seem to bother most kernel developers.

    Can you imagine the magnitude of the sh*tstorm they would create if Microsoft tried to pull something like this?? That's a pretty ballsy move for people who rely on the good will of the companies developing software for their platform.

  15. Binary modules can still be used. by cureless · · Score: 4, Informative

    I've seen quite a few posts that seem to imply that binary modules cannot be used with the new kernel. That is not true.

    What is true is that they are doing things like not exporting the system call table so that any module can change it at their will. That is, a binary module can't replace the write call or fork call. There are other mechanisms like syscall registering for modules that need some new system call. (I haven't looked into that aspect yet).

    What they are doing is not encouraging binary only modules. (and by binary I mean non GPL). The example they use is the modification of work queues. Things like tainting the kernel (so the kernel knows when it's been tampered with by proprietary code (read loaded a non GPL module)) have been around for a while now. Kernel people will not give support to problems with tainted kernels.

    I use and nvidia driver in one of my computers, and that taints my kernel. I understand the implications. I also see no reason why nvidia has to modify my syscall table.

    In short, I don't think normal "drivers" need to modify the syscall table. You can add a new filesystem, network protocol, etc without the need to modify the syscall table. So stop complaining about no more binary only drivers.

    I agree with the developers in the choice. I also wish nVidia, along with the other companies, GPLed their drivers. After all, they are _drivers_ for the hardware I bought. And if they don't want to, they could at least release the complete specifications for the hardware so we can build our own 3D accelerated drivers.

    cl

    --
    Reply . . . let's get it over with.
  16. Open discussion. by OoSync · · Score: 3, Insightful

    Its also important to realize that the methods being used to enforce the GPL in the kernel have been developed completely in the open. If binary-only module developers are having problems with this, have they spoken out, have they said anything, does this really affect them much? I've not seen much of a discussion of this on Kernel Traffic, except that the Linux kernel developers don't feel its their business to make concessions for binary-only modules.

    As for arrogance, they're enforcing the license on their product. Microsoft would do the same for their products if your code massages their code without abiding by their license.

    BTW, this sounds like an idea for Ask Slashdot. Get someone developing the Linux/BSD drivers from nVidia to answer questions about this and find out if it really is a problem, or if /. readers are just gettting huffy for no real reason.

    --

    I always get the shakes before a drop.
  17. Re:Beggers can't be choosers by pclminion · · Score: 4, Interesting
    So, wait.. you accuse the kernel devs of "blackmail" because new drivers (which may or may not be written by the kernel devs) aren't usually ported to older versions.

    I never said so on the list or in private to anyone. That's just how I feel about it.

    The "rant" was the result of me being extremely pissed. And I believe justifiably so. There was something in the kernel that Andre considered a "defect." He had a simple piece of code to fix it. The kernel people rejected this, because "in theory, someone can get around this, so there's no point plugging a hole which someone can reopen."

    At this point, I made some remark about how it would boost user morale if the patch were in place, regardless of any real technical merit. I made some statement to the effect of, "You guys should care more about what the users want, even if you think you know better than them." I didn't mean it in a combative sense. I was just growing irritated with their arrogance, and wanted to say so. I had earlier made some comment about how BeOS offered some feature that I wanted, and of course this got used as ammo against me, claiming that I was trying to blackmail the kernel developers by threatening to leave Linux -- as if my sole usership was pivotal to their existence. I'm not idiotic enough to make such a claim.

    I've tried the "ya know, this really needs changing, and here's a few reasons why..." approach. The response I've gotten was "No. You're an idiot. Your idea is stupid. We'll never do that. Go away."

    Kinda makes one bitter, you know...

  18. Binary-only restrictions by karlm · · Score: 3, Insightful
    Each kernel module declairs what liscence it falls under. More symbols are exported for Free modules.

    Nobody is preventing NVidia from writing binary-only drivers, they just need to hook into the kernel at lower levels. Some kernel developers want the NVidia people to mooch less.

    They're tightening restrictions, not banning binary-only modules. Relax. They're just saying if NVidia wants to use binary-only modules, that's thier perogative, but it's a huge pain for the developers that become de facto support for those NVidia drivers. Basically "You want to be a pain in my ass, go ahead, but you're now getting less help from me to do it."

    The *BSD kernels are simpler and may not have equivalents to the special higher-level functions that are being hidden from non-Free modules. I don't know. In any case, it's unlikely NVidia is going to jump ship for one of the *BSDs. I'm not even surewhat companies hope to achieve by providing binary-only drivers. Thier competitors certainly have decompilers. If they really need to protect patented algorithms, that can be done in firmware/hardware and/or usermode drivers. Usermode drivers also prevent binary-only kernel instabilities and reduce kernel dependancies.

    --
    Copyright Violation:"theft, piracy"::Anti-Trust Violation:"thermonuclear price terrorism"<-Overly dramatic language.
  19. Not good from a strict GPL standpoint by Wateshay · · Score: 3, Informative

    A lot of people are complaining that the new binary module licensing changes are too restrictive, and reduce people's freedom when writing drivers (and I won't argue with that). Something else to think about, though, is whether the new changes are really the best thing to do from a purely GPL standpoint, where the end goal is to have as much software as possibly be free. As the GNU project points out in their discussions on licenses, it is sometimes a better idea to allow binary software. There are other operating systems than Linux (I hear there's a company in Redmond that makes one that's quite popular). If Linux discourages or forbids binary only drivers, the driver manufacturers won't make drivers for Linux (since, in many cases, they are bound by licenses that won't allow them to release open source drivers). If Linux doesn't have hardware support, then fewer people will be willing to use it, and thus fewer software companies will release Linux versions of their software. So far, Linux hardware support has been very good, but slow. New devices are often poorly supported. However, commercial drivers (binary and open source) have been starting to gain momentum, new hardware is more likely to have support, often from the manufacturers of the hardware themselves. I hope that the new 2.6 kernel won't stall that advancement, and seriously slow widespread adoption of Linux as a viable OS.

    --

    "If English was good enough for Jesus, it's good enough for everyone else."

    1. Re:Not good from a strict GPL standpoint by DeathPenguin · · Score: 3, Insightful

      >> If Linux discourages or forbids binary only drivers, the driver manufacturers won't make drivers for Linux (since, in many cases, they are bound by licenses that won't allow them to release open source drivers).

      Exactly. This is especially true with video cards.

  20. What the hell are they thinking??? by DeathPenguin · · Score: 3, Insightful

    No binary modules? What self-rightous idiot thought of that? That would alienate all major support for video cards. For all you purists, get it through your thick skulls: Patents exist on OpenGL and many other technologies (Such as S3TC) that are required for many applications (Such as Unreal Tournament 2003). Check other threads with nVidia-related information and you'll find more detailed information on nVidia / SGI / Microsoft / etc. patents on widely used industry standard OpenGL technologies.

    And besides, imagine the hypocrisy of the Linux kernel devs taking away choices from the people that use their kernel. I mean, I thought Linux was supposed to be for people who actually wanted control over what goes into their kernel.

  21. Question for Scheduling Knowledgeables by ender's_shadow · · Score: 3, Interesting

    "Fundamentally this is a simple change but it requires a large-scale reimplementation of code to protect concurrency. Thankfully, the kernel's SMP spin locks already provide the large majority of this protection. So these spin locks are used as markers of where to temporarily disable preemption, to avoid mangling shared data. It works and everyone is happy."

    Is this a hack? It sounds like a workaround, but maybe it's just creative use of existing tools.

    Can anyone tell me if this is how other systems do preemptive multitasking? I really don't know. Is this similar or analogous to Intel's new chip that acts like a multiprocessor?

  22. Stable API by guacamole · · Score: 3, Interesting

    Why can't Liunx kernel developers come up with an API for binary kernel modules and keep it stable at least between minor kernel releases so that users could use third party kernel modules withfout having to recompile them for each kernel upgrade?

    Look at Solaris. It's quite possible to take even certain kernel modules that were built for Solaris 2.6 and use them on Solaris 8 without recompiling. I am not even mentioning that kernel modules don't break at all between minor kernel releases (or patch levels) on Solaris.

  23. Re:Beggers can't be choosers by psamuels · · Score: 3, Insightful
    The "rant" was the result of me being extremely pissed. And I believe justifiably so. There was something in the kernel that Andre considered a "defect." He had a simple piece of code to fix it. The kernel people rejected this, because "in theory, someone can get around this, so there's no point plugging a hole which someone can reopen."

    In theory? This was like setting a policy that if you sell a gun to an ex-con, it must be sold with the safety catch set. Sure, criminals can "in theory" turn off the safety themselves, but hey, it's better than nothing, right? At least "by default" they can't go out and start shooting people, right?

    ...Wait. Did you just call Andre's taskfile patch "simple"? Maybe you're one of those people who consider ACPI parsing "simple" too? Have you even read the patch, or was this just hearsay?

    For those of you who weren't following along back then, Andre wanted to provide an ioctl-based way to run vendor-specific, often undocumented hard disk commands. This would be things like "make disk read-only" or "unlock extra 10 GB of space the firmware rounded down so they could sell those excess 40GB drives as 30GB" or such. Being vendor-specific and often undocumented commands, the applications that used them might be buggy and, if buggy enough, might be able to turn a hard disk into a paperweight.

    The taskfile patch was intended to provide sanity checking in the kernel to guard against buggy applications. Of course, Andre being Andre, he didn't put it that way. By the time he was done yelling, it sounded as though EVIL HACKERS WILL DESTROY YOUR HARD DISKS IN THE BLINK OF AN EYE AND IT'LL BE ALL LINUX'S FAULT. Never mind that the EVIL HACKER already needs to crack root before he gets the necessary raw hard disk access. Never mind that the taskfile patch would not prevent the EVIL HACKER from bypassing the ioctl interface and bit-banging the ATA chip directly. Never mind that, as root, there are a lot of horrible things an EVIL HACKER could do to your system, much more insidious and EVIL than crashing a hard drive, like installing backdoors and making your system fail in subtle ways that you wouldn't notice for a month. Never mind that those same EVIL HACKERS have been able to destroy these same hard disks in any version of Linux or Windows since the beginning of time (well, the beginning of ATA hard disks with these command sets) and yet somehow, remarkably, we haven't yet heard of it being done.

    And never mind the whole problem that if a buggy application can destroy your disk, so can a buggy taskfile patch. (Andre tends to exude an abnormally high level of confidence in the quality of his implementations.)

    In short, at the risk of sounding like I know what I'm talking about, which I don't really, it was a stupid idea. At least as initially presented on the mailing list. Some time later, the startling revelation came out that the taskfile patch actually had some other uses besides the one listed above (protecting against EVIL HACKERS DESTROYING YOUR HARD DISKS AS YOU SLEEP). And then, marvel of marvels, Linus was suddenly a lot more sympathetic to the patch.

    I made some remark about how it would boost user morale if the patch were in place, regardless of any real technical merit. I made some statement to the effect of, "You guys should care more about what the users want, even if you think you know better than them."

    And that, at the risk of sounding like one of your alleged arrogant pricks on linux-kernel, is idiotic too. Hard to explain what's so utterly wrong with your statement - I guess it's just one of those things - if you have to ask, you'll never know. (Now how's that for elitist?...)

    --
    "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README