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.
Nothing's vanished... just not included... now you too can learn to kernel hack!
www.superdorf.com
-- Will program for bandwidth
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.
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
Why does the kernel module interface change so often though? I mean, surely there are only so many ways to write a mouse driver
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.
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.
Microsoft are busy working on just this and it's much worse than you would imagine.
No, they aren't. Palladium will NEVER stop you from running unsigned code. Never. Ever.
There is a very simple reason for this: it would break backward compatibility. No backward compatibility, then no operating systems sold.
Yes, there are people who are LYING about Palladium. Yes, LYING.
And yes, Palladium can be used for digital rights management. But that is a completely separate issue from the idiots who assert that only Microsoft-signed software will be allowed to run, which is completely absurd.
Palladium is nothing like this binary module issue.
Sometimes it's best to just let stupid people be stupid.
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
You are wrong when portraing the fact that you can still run Corel 3.0 as a plus. Windows is paying a huge price for maintaining backwards compatibility, it is really hurting the operating system and especially the developers who develop for Windows. The fact that Linux kernel changes the APIs often and does not have backward compatibility is is well-compensated by the fact that all the interface changes are completely transparent and has the advantage of preventing drivers bit rot (among others).
I passed the Turing test.
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
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!
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.
/. readers are just gettting huffy for no real reason.
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
I always get the shakes before a drop.
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?
If you are aware of any lie in Ross Anderson's TCPA/Palladium FAQ, please state what it is.
Sheesh, that piece of trash is loaded with them. How about this beauty...
And I don't care if he uses words like "could" or "may" or any other wishy-washy term. For purposes of his document, he stating that Microsoft WILL do these things, no matter how absurd. Note, by the way, that Microsoft could implement the above bullshit right now if they wanted to without waiting.
That document is a load of scare mongering crap.
Sometimes it's best to just let stupid people be stupid.
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.
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...
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.
>> 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.
"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:
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!
In that situtation why the hell would you be running a kernel like that. Run the RedHat kernel or the distro kernel. These people are paid to see that the interface breaks don't happen. And stop complaining when you vary from the distro that the things that used to work before now no longer work.
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.
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