Slashdot Mirror


Linux Kernel to Fork?

Ninjy writes "Techworld has a story up about the possibility of the 2.7 kernel forking to accomodate large patch sets. Will this actually happen, and will the community back such a decision? "

117 of 578 comments (clear)

  1. From the article... by Anonymous Coward · · Score: 5, Insightful

    > Each version of the kernel requires applications to be
    > compiled specifically for it.

    FUD FUD FUD. No. no no no. NO!. Who writes this generic shit?. There's no truth behind the above statement and it just implies something that is not a problem.

    1. Re:From the article... by boaworm · · Score: 4, Insightful

      Perhaps he is refering to "Applications" such as the "Nvidia Driver Software" for Linux? That has to be rebuilt/recompiled if you switch kernels, even when switching between 2.6.9-r1 to -r2 etc (Gentoo!).

      Perhaps he is not talking about applications such as "Emacs" or "vim" ? (Or, he just finished his crackpipe :-)

      --
      Probable impossibilities are to be preferred to improbable possibilities.
      Aristotele
    2. Re:From the article... by DanTilkin · · Score: 5, Insightful

      FUD generally implies deliberate disinformation. All I see here is a clueless reporter. To anyone who knows enough about Linux to make major decisions, Linus Torvalds will fork off Version 2.7 to accommodate the changes should make it clear what's going on, then the rest of the article makes much more sense.

    3. Re:From the article... by elendril · · Score: 5, Interesting

      You're right: Each version of the kernel doesn't requires applications to be compiled specifically for it.

      Yet, where I work, the applications have to be specifically recompiled for each of the three versions of the Linux distribution currently in use.

      While it may be mainly the in-house distribution designers fault, it is a real mess, and a major reason for many of the engineers staying away from Linux.

    4. Re:From the article... by Darren+Winsper · · Score: 2, Insightful

      The only part that needs to be recompiled is the kernel module, and it's not an application, it's a fucking kernel module!

    5. Re:From the article... by WoodstockJeff · · Score: 4, Informative
      I can download a binary onto Windows, and it just works.

      Because installers for Windows programs silently replace DLLs with the versions they require... which can and does cause earlier programs to suddenly fail, because they depended upon a particular DLL's quirks. It's called "DLL Hell".

      Linux programs are more proactive about checking library versions. But, you can install multiple versions, because the shared libraries usually have different names. Not so under Windows, and windows will only load the first version of a named DLL it finds, and hang onto it until you reboot. If that version fits your program, life is good; if not, well...

    6. Re:From the article... by leonmergen · · Score: 2, Informative
      That recompile of modules is just a security from the kernel - it doesn't want to load modules not compiled for it with the exact same compiler version. Otherwise the behaviour of the module can't be certain...

      So if you switch from gcc 3.3.1 to 3.3.1-r1 or something, you compile your new nvidia module with it, then you *also* need to recompile your kernel, otherwise the module won't load...

      Really, this is the same for every kernel module, so I don't know what the big deal is with that nvidia module bitching all the time...

      --
      - Leon Mergen
      http://www.solatis.com
    7. Re:From the article... by chris+mazuc · · Score: 4, Funny
      Oh, man. You hit a button... I F-ING HATE PACKAGE MANAGERS UNDER LINUX. I try and update program X. Oh oh, dependency. Chase that down. That creates two more dependencies. Chase those down. Soon it cascades into a total nightmare.

      ever used apt?

      --
      E pluribus unum
    8. Re:From the article... by Anonymous Coward · · Score: 5, Interesting

      WoodstockJeff - "Not so under Windows, and windows will only load the first version of a named DLL it finds, and hang onto it until you reboot"

      Untrue - there are SEVERAL rulesets that allow side-by-side loading of DLL's in Windows ever since Windows 2000 in fact.

      Ruleset for library loading underneath Windows2000/XP/2003 (assuming developer/oem of the software didn't "hardcode" his library path define or LoadLibrary API call with a path to a file), is as follows:

      "DLL HELL" may occur on Win32 OS when 2 of SAME named "Dynamic Link Libraries" (.dll extension, executable with no loader header that cant self initialize) exist on a system and are accessible to a program. Since same name it can cause a program to "grab hold" of wrong version build to init for call functions it uses from it!

      Can be problem that causes crash in programs because program expects function it calls to return integer return from a function but latest build of DLL of same name sends back pointer data instead!

      Microsoft overcame a great deal of "DLL Hell" using ActiveX controls (OLE Servers, which have .DLL extensions also), that have .OCX extensions too. These are "marshalled" (loaded) not by name, as is done with older .DLL file types using the LoadLibrary call, but via a thing called a "GUID" (Globally Unique Identifier).

      This is a 128-bit UNIQUE generated number in the registry that summons the CORRECT build the calling program requires by internally checking the .ocx or .dll file being called for its internal version information (using the functions this program uses on Version checking no doubt, std. Win32 API call method).

      Microsoft has also put in "Side-by-Side" loading in their newer Operating Systems (2000/XP/2003) which can load the older type DLLs technically by name but into RAM separately, where they can be accessed separately by programs (the program that calls and finds the one it loads) so no "collisions" occur.

      This is a GOOD move, but still can be problematic if the program finds the wrong version build of the .DLL it is calling, first

      Order of seeks used by Win32 Portable .exe files for finding DLLs to load -

      NT based Os by default, use different approaches for 32-bit vs. 16-bit apps:

      1.) For 32-bit apps, NT/2000/XP/2003 search for implicitly loaded DLLs at:

      a. .exe location folder
      b. Current folder
      c. %SystemRoot%\SYSTEM32 folder
      d. %SystemRoot% folder
      e. %Path% environment variable

      * BUT if a DLL is listed as a KnownDLLs here in registry:

      HKEY_LOCAL_MACHINE\System\CurrentControlSet\Cont ro l\Session Manager

      As REG_SZ entry type & Value of DLL name w/out the extension + data value of DLLname w/ .DLL extension, then search order becomes:

      aa. %SystemRoot%\SYSTEM32.
      bb. .exe file folder.
      cc. Current folder.
      dd. %SystemRoot% folder.
      ee. %Path%.

      KnownDLLs are mapped at boot time. Rernaming or moving during a session has no effect.

      You can alter this behavior by including the 8.3 DLL name in the ExcludeFromKnownDlls entry, a REG_MULTI_SZ value, & one per line in that comma delimited listing.

      (This makes NT believe that the DLL is not listed in KnownDLLs.)

      2.) For 16-bit apps, Windows NT uses KnownDLLs for both implicitly and explicitly load DLLs. The value is at:

      HKEY_LOCAL_MACHINE\System\CurrentControlSet\Cont ro l\WOW.

      Here in that key, KnownDLLs is a REG_SZ value that lists 8.3 DOS formatted DLL names, & is separated by spaces. Without a KnownDLLs entry, WOW searches:

      a. The current directory.
      b. The %SystemRoot% directory.
      c. The %SystemRoot%\SYSTEM directory.
      d. The %SystemRoot%\SYSTEM32 directory.
      e. The .exe file directory.
      f. The directories in your Path.

      With

    9. Re:From the article... by Etyenne · · Score: 5, Informative
      Oh, man. You hit a button... I F-ING HATE PACKAGE MANAGERS UNDER LINUX. I try and update program X. Oh oh, dependency. Chase that down. That creates two more dependencies. Chase those down. Soon it cascades into a total nightmare. And then, I frankly give up, and just download the source, recompiled it in parallel to the package, and just delete the package.

      You don't understand. A package manager is a piece of software that does resolve dependency, download packages (from the Internet or local media) and install them for you. That is why they are called package manager. Using these, you never have to "chase" down package, it's all automated. There are many of them : apt, yum, up2date, urpm, emerge, etc.

      Please get current instead of making a fool of yourself on the Web; this problem have been solved a few years ago. Your favorite distro probably use one, and you don't even know. Which one is it, anyway, so I can give you the executive summary on it's usage ?

      --
      :wq
    10. Re:From the article... by DaHat · · Score: 4, Insightful

      I agree, even with a package manager, updating a single app under linux can be a nightmare. If you check out my blog in my sig, you'll see some rantings related to that.

      One of my biggest gripes, was how when you try to install the latest version of Foo, it requires the latest version of Bar, which in turn requires newer versions of X and Y and so on.

      If you are using a more recent distro, this is far less of a problem, but the moment you move back to something older that cannot be updated as far as required... you end up with problems.

      Specifically, I was trying to get some things working under Red Hat 6.2, a 5 year old distro. Many called me dumb for even trying such a thing, which I find quite entertaining considering how many still use 6.2 in server back ends, not unlike how many still use NT4, because it works.

      Speaking of NT4, I found it far easier to back port a Windows based app written for XP or 2k back to NT4, jumping back 5-9 years in terms of age, than it is to go from Fedora Core 2 to Red Hat 6.2, a jump of only 5.

      This is why I so love Windows, consistent targets (within reason), where the # of system updates is finite and can be controlled.

      As for this so called 'Dll hell' people like to bad mouth Windows for... I can't say I've ever had that issue myself... however I did find it worse than hell to try to figure out how to run 2 different versions of GLIBC on a system without recompiling every single application requiring one or the other... Windows has many simple solutions for a problem like that.

    11. Re:From the article... by be-fan · · Score: 2, Insightful

      Please, try and get out of the early 1990s. Manual dependency resolution hasn't been a problem with Linux siince at least then, and even then, it was only a problem on RedHat systems. You wanna know how I install software (I'm on Ubuntu). I start up Synaptic, I click on what I want, click install, and have the app and it's dependencies all downloaded and installled automatically. Quite a bit easier than any Windows installer I've eer used.

      --
      A deep unwavering belief is a sure sign you're missing something...
    12. Re:From the article... by Etyenne · · Score: 4, Informative

      Software distributed on Windows are either compiled statitically or ship with their own kit of .dll. It's necessary because Windows does not have *any* dependency resolution facility and, up until recently, had no library versionning mechanism either. There are drawback of shipping "ready-to-run" software : waste of disk space (static executable are larger, and duplicate .dll take up room), having library spread all over your disk instead of having them in a central location, potential library overwriting (aka "DLL Hell") and no way to update library centrally (witness the recent security hole with GDI+; you had to run an utility that scan your entire disk in search of vulnerable application). The Windows way *do* work, but it is certainly not the optimal way. People have gotten used to the drawback thus they don't complain.

      Just for fun, search for files named "mfc42.dll" on your disk (or any other common Windows dll; I'm not very up-to-date on these). How many are there ? Are all of these up-to-date ? Does any of them have security issues (known buffer overflow, for example) ? How much disk space do they use collectivelly ?

      You could distribute application the same way on Linux, but people don't because it would break the architecture of having your libraries centrally stored and managed. The Linux architecture to libraries management is much superior but have the drawback that it require that you use a dependencies-aware package manager correctly. Apparently, you don't.

      --
      :wq
    13. Re:From the article... by smallfeet · · Score: 2, Insightful
      I think we have isolated your Linux problem. It's you.

    14. Re:From the article... by rogabean · · Score: 2, Insightful

      then use Windows... noone twisting your arm.

      some of prefer to... LEARN.

      --
      "why don't you just slip into something more comfortable...like a coma!"
    15. Re:From the article... by Darren+Winsper · · Score: 2, Insightful

      NVIDIA do rather well with their kernel module wrapper.

    16. Re:From the article... by trashme · · Score: 4, Insightful

      OK, I'll bite. Someone needs to teach you how this works.

      You aren't going through bullshit. How is 'apt-get install foo' or 'yum install foo' or 'emerge foo' going through bullshit? It's one command! Do you want something easier? Must the OS read your mind and install the package for you?

      These "200 other barely-related packages" are called dependencies. Pakcage managers don't just start downloading other packages willy-nilly. It installs those packages that your new package is dependant on. Some package managers can also download packages marked as suggested or recommended, but that is easily changed via a config option, menu choice, or dialog box.

    17. Re:From the article... by Kent+Recal · · Score: 3, Insightful

      Nice summary of DLL-Hell.
      But how exactly does that collide with grandparents point?

      You have stated yourself that any installer is free to use any of the quierks you've described (in short: rely on registry in hope it's not messed up yet again, overwrite DLLs that other programs may be using or waste diskspace and memory by dumping yet another copy of bozo.dll to be loaded at runtime).

      So it's only a matter of time until you run into a piece of software that picks the route that breaks your system.

    18. Re:From the article... by Kent+Recal · · Score: 2, Informative

      Obviously not.
      For his enlightenment: apt (the debian package manager) does all the "dependency-chasing" for you. You say "apt-get install kde" and it happens.

    19. Re:From the article... by Etyenne · · Score: 4, Insightful
      You don't understand. I don't WANT to go through all this bullshit.

      Going thru this "bullshit" is actually easier than installing software in Windows. Assuming you use and apt-based distro, just type apt-get install foo. You don't need to even download the software, apt does it for you. The only interaction it require is a confirmation if your package have dependencies. A minute or two later (depending on the size of the software and the speed of your connection), the magic happen : the software is installed ! No chasing software on the Web, no downloading, almost no interaction (don't you find clicking Next, Next, Next stupid at last ?). It's the best thing since sliced bread, yet you fail to see it. Again, which distro do you use so I can give you clear instructions on how to use your package manager properly ?

      --
      :wq
    20. Re:From the article... by JamieF · · Score: 2, Insightful

      Yes, it is really annoying how when you try and create a "DLL hell"-like library situation under Linux, the package manager prevents you from shooting yourself in the foot like that.

      If you want to target Red Hat 6.2, target Red Hat 6.2. If you want to have it both ways and depend on something that's much newer (and thus has lots of dependencies that have to be updated) that's your choice. You can't have it both ways - you want to target an old OS but you want to use the newest libraries to save yourself some effort, but you also don't want to have to update those libraries. Somehow they're supposed to magically appear.

      I suspect that your IDE and/or installer maker on Windows make your dependencies magically appear on NT4, by figuring out what you need and bundling it with your executable. That doesn't make the API consistent, it just means that the development tools you're using are convenient in that respect.

      Also, you picked a distro that doesn't come with an automatic package downloader (at least, as far as I know it doesn't). It has a local package manager (RPM) that stops you from shooting yourself in the foot, but it doesn't go get stuff for you.

      I think you need to learn the difference between using developer tools that insulate you from dependency horrors, and a package manager that insulates you from dependency horrors. It sounds like on Windows you had the first, and on RH 6.2 you had neither.

    21. Re:From the article... by Anonymous Coward · · Score: 3, Interesting

      That's why a bunch of guys are assembling a new project to embrace as many Linux distributions as possible, adding FreeBSD and Windows to the mix.

      Oops! The link: http://elektra.sourceforge.net/

      Please, have a look at it. Its perspective is smarter than it seems at a first glance, and very promising as well.

    22. Re:From the article... by lazy_playboy · · Score: 2, Informative

      $apt-get install foobar

      There. Was that so difficult?

    23. Re:From the article... by Allen+Zadr · · Score: 3, Insightful
      Even though I'm replying to an AC post, I'm going to assume that it isn't just trolling...

      A very few of the top Kernel developers are actually paid to do what they do. For the rest of the developers (the countless number of real folks with other things to do) who submit patches (many of which actually end up in the Kernel after a few bounces back-and forth with a lead).
      For the perspective of these folks, the kernel does exist for them to code.

      I think what you are forgetting, is that nobody can lock the Linux kernel up into an ivory tower. It is a community effort. When it's really, really important to someone with resources (IBM, HP), that someone will assign a few developers to get it done.

      I think the biggest thing your argument forgets is that - by the nature of Open Source development - implimentation of something someone else has already done (often the case in Linux) must be done in a vacuum to avoid IP infringement. So, when it was time to do USB support - decisions had to be made. For most devices, the USB stuff does work, the fact that it isn't done the same as Windows is important.

      --
      Kinetic stupidity has a new brand leader: Allen Zadr.
    24. Re:From the article... by Kent+Recal · · Score: 4, Informative

      Dear Anonymous Coward,

      apt will not put you into 'dependency hell' unless at least one of the following preconditions is met:

      1) You are running debian/unstable
      2) You are overriding warnings (using the --force switch)
      3) You are doing something stupid, as root

      sincerly,
      the truth

    25. Re:From the article... by automatix · · Score: 2, Informative
      > waste diskspace and memory by dumping yet another copy of bozo.dll
      >> That's basically the Linux solution (short of recompiling everything).

      If you've read the other comments you'll know this is NOT the way linux manages it! Linux distributions have binary packages that contain ONLY the applications code, and they depend on other library packages, which are shipped and updated separately. There is usually only 1 copy of a library package, shared by all the apps on the system.

    26. Re:From the article... by AaronW · · Score: 4, Insightful

      I agree. It's about time that Linux provided a generic API for various drivers. Two types of drivers could exist, one type that sticks strictly with the API and the other that is not bound to it. For drivers that stick to the API they don't need to worry about being recompiled with each kernel version, only the API version. Different sets of APIs could be provided for different driver types. For example, network drivers have very different requirements than RAID drivers.

      Most other operating systems do this and it's about time Linux provided some standards for drivers.

      As much as we hate it, we do need to support binary only drivers.

      It pisses me off that I can no longer use my webcam because the driver maintainer can't keep up with every variation of the kernel, and for legal reasons can't release the source code.

      -Aaron

      --
      This post is encrypted twice with ROT-13. Documenting or attempting to crack this encryption is illegal.
    27. Re:From the article... by Kevinb · · Score: 2, Informative
      I hate it when people spew information about Windows that hasn't been true in over 6 years and get modded up as +5 Informative.

      Because installers for Windows programs silently replace DLLs with the versions they require... which can and does cause earlier programs to suddenly fail, because they depended upon a particular DLL's quirks. It's called "DLL Hell".

      This hasn't been true since Windows 98. See Windows File Protection on MSDN.

      Linux programs are more proactive about checking library versions. But, you can install multiple versions, because the shared libraries usually have different names. Not so under Windows, and windows will only load the first version of a named DLL it finds, and hang onto it until you reboot. If that version fits your program, life is good; if not, well...

      This hasn't been true since Windows 3.1.

      1. Each process under Win32 has its own address space and thus can load its own version of a DLL.
      2. Each program has control over which version of a DLL it loads; see LoadLibraryEx for details.
    28. Re:From the article... by lakeland · · Score: 2, Interesting

      Er... can you even install office 2004 on windows 98? And assuming you can, how many things will you break in doing so?

      RH6.2 is stable enough when running software designed for RH6.2. Try forcing the install of fedora softare on it and you'll have to be damn careful not to break things. You say yourself in your message that you're not upgrading because it works. Well, guess what, installing your fancy new package on it is damn close to the full upgrade you're trying to avoid.

      Essentially, 6.2 = stable, FC2 = fairly stable. Upgrading from 6.2 to FC2 may break things. Installing a FC2 package on 6.2 and telling the system to pull down everything it needs, well, that'll break things too.

      Curiously, the only distribution I know which will gracefully handle an extremely modern package amongnst many ancient ones is gentoo. If they ever manage to get 'gentoo stable' to the same standard as debian stable, this may be exactly what you're looking for.

    29. Re:From the article... by Foolhardy · · Score: 2, Insightful
      If I write software, all I should release is the source code. Let the distributions package it for their architecture.
      So then I'm at the mercy of the distro people? I have to wait for them to support the app (if they ever do); I have to wait for them for new versions, long after the creator has released it. I thought free software was supposed to be decentralized.

      The people who are motivated to create the app (the author) should be the one releasing packages, not some third party. Think what it would be like if you couldn't install anything on Windows without Microsoft individually making a special installer package for it; you can still install but not without a major headache.
    30. Re:From the article... by bob+beta · · Score: 2, Funny

      Why is video hardware support getting stuffed into the Linux kernel? Is Linux finally making the transition that Windows NT did from 3.51 to 4.0?

    31. Re:From the article... by damiam · · Score: 2, Insightful
      This is one of the biggest concepts that Windows users can't get their heads around when trying out Linux.

      If I write software, all I should release is the source code. Let the distributions package it for their architecture.

      I understand the concept perfectly, thank you. I just think it's wrong. It's unrealistic to expect distros to package every conceivable piece of software a user might want, and a whole lot of wasted effort if each distro packages its own version. There's no reason that a binary that runs on one distro shouldn't run on a different distro or even another version of the same distro.

      --
      It's hard to be religious when certain people are never incinerated by bolts of lightning.
    32. Re:From the article... by slux · · Score: 4, Insightful
      No.
      If we want to maintain the quality and stability that the Linux kernel has, we need to resist binary drivers. Many of the stability issues remaining with Windows today I believe are in fact driver issues.

      Giving in to the hardware companies' (pointless) fear of losing so-called "intellectual property" by opening up their drivers would pass part of the control of the kernel from Linus & co. to countless programmers who may or may not have special interest in improving Linux specifically. The quality assurance that currently takes place for the free software drivers that get into the kernel is valuable.

      Giving up on free/open source software at every turn where it is convenient would lead us to having an OS that is an assortment of non-free parts a bit like the current proprietary UNIXes. It might even lead to someone eventually getting into a position where they could charge for an essential part of the system thus rendering it non-free even in the beer sense.

      For a kernel developer's take on this, read this, it's from Greg Kroah-Hartmann's blog:

      But the issue of driver compatibility. For all of the people that seem to get upset about this, I really don't see anyone understand why Linux works this way. Here's why the Linux kernel does not have binary driver compatibility, and why it never will:

      • We want to fix the bugs that we find. If we find a bug in a kernel interface, we fix it, fix up all drivers that use that api call, and everyone is happy.
      • We learn over time how to write better interfaces. Take a look at the USB driver interface in Windows (as an example). They have rewritten the USB interface in Windows at least 3 times, and changed the driver interface a bit every time. But every time they still have to support that first interface, as there are drivers out there somewhere that use it. So they can never drop old driver apis, no matter how buggy or broken they are. So that code remains living inside that kernel forever. In Linux we have had at least 3 major changes in the USB driver interface (and it looks like we are due for another one...) Each time this happened, we fixed up all of the drivers in the kernel tree, and the api, and got rid of the old one. Now we don't have to support an old, broken api, and the kernel is smaller and cleaner. This saves time and memory for everyone in the long run.
      • compiler versions and kernel options. If you select something as simple as CONFIG_SMP, that means that core kernel structures will be different sizes, and locks will either be enabled, or compiled away into nothing. So, if you wanted to ship a binary driver, you would have to build your driver for that option enabled, and disabled. Now combine that with the zillion different kernel options that are around that change the way structures are sized and built, and you have a huge number of binary drivers that you need to ship. Combine that with the different versions of gcc which align things differently (and turn on some kernel options themselves, based on different features available in the compiler) and there's no way you can successfully ship a binary kernel driver that will work for all users. It's just an impossible dream of people who do not understand the technology.
      • Drivers outside the kernel tree and binary drivers take away from Linux, they give nothing back. This was one of the main statements from Andrew Morton's 2004 OLS keynote, and I agree. Out of the box, Linux supports more hardware devices than any other operating system. That is very important, and is something that we could not have done without the drivers being in our tree.
      • If a kernel api is not being used by anyone in the tree, we delete it. We have no way of knowing if there is some user of this api in a driver living outside on some sf.net site somewhere. I have been yelled at for removing apis like this, when there was no physical way I could have possibly known that someone was using th
    33. Re:From the article... by bob+beta · · Score: 2, Interesting

      You don't need to even download the software, apt does it for you.

      Whoah. You mean the OS actually has it's own connection to the internet? I won't have to turn on the 56K modem that I can sometimes get as fast as a 19K connection through?

      Yep. You just made downloading that 3.4 Meg Install Shield EXE file seem like a burden...

    34. Re:From the article... by Etyenne · · Score: 2, Insightful

      I know you are making an attempt at sarcasm, but just to clarify, yes, apt take care of the downloading. You do not have to open to open your browser, look for the software, download it and install it by hand. All these step are automated, including fetching the software on the Internet. If you are on a slow link, most package managers can be configured to use a local media (CD-ROM) as software repository. But if you happen to have a fast link, then package manager and online software repositories really shine in ease-of-use.

      --
      :wq
    35. Re:From the article... by RedWizzard · · Score: 4, Informative
      Perhaps he is refering to "Applications" such as the "Nvidia Driver Software" for Linux? That has to be rebuilt/recompiled if you switch kernels, even when switching between 2.6.9-r1 to -r2 etc (Gentoo!).
      No, the author is just clueless. Look at the first paragraph:
      In a worrying parallel to the issue that stopped Unix becoming a mass-market product in the 1980s - leaving the field clear for Microsoft - a recent open source conference saw a leading Linux kernel developer predict that there could soon be two versions of the Linux kernel.
      He's obviously not aware that parallel development and stable branches are the norm for Linux, and indeed most open source software.
    36. Re:From the article... by omicronish · · Score: 2, Insightful

      One potential problem I'm seeing is when thousands of hardware manufacturers want and insist on proprietary drivers for Linux. What happens if the driver interface changes? Will they spend the time and energy to port their drivers to the new interface? I agree that fixed interfaces result in legacy code, but you really need some sort of stable platform if companies are to develop Linux drivers, and they refuse to submit them to the kernel tree.

    37. Re:From the article... by bob+beta · · Score: 2, Interesting

      Windows NT made that disasterous transition to 'video in the kernel' with NT 4.0 and it reduced stability from NT 3.51. Why are the hooks for AGP ports vendor-specific? Why is the AGP hardware driver not a well-tested checkbox option in the kernel? Why is any vendor code at all required? Is AGP I/O that quirky and vendor-keyed?

      I'm just asking. It sounds like it could be an issue.

    38. Re:From the article... by BiggerIsBetter · · Score: 3, Interesting

      If we want to maintain the quality and stability that the Linux kernel has, we need to resist binary drivers.

      Firstly, I agree. BUT if need to allow third party vendors to ship binary drivers (and maybe we do, in the IP crazy world) then a QNX user-space driver model might be smarter?

      --
      Forget thrust, drag, lift and weight. Airplanes fly because of money.
    39. Re:From the article... by XO · · Score: 3, Insightful

      Yes.

      A better implementation would allow binary drivers, without any of these issues.

      While many of the issues out there may BE the binary drivers.. but, if Joe User goes out and buys a piece of hardware for his computer, plugs it in, and can just install a little driver program, to make it work, then Joe User is happy.

      When I, someone who has been using Unix since System III was common, and have been using computers for the last 25 years (i'm 28..), and have done kernel hacking, and worked on major products, even gained quite a bit of income from my own projects back in the day, has to set aside an entire day just because I want to operate my USB Webcam in Linux (which I Haven't done yet, because I am too busy to have an entire day to spend fucking with my computer), and I --know-- that it's not going to be as simple as "plug it in, install the driver, recompile". .. why the fuck should it require a recompile, anyway? If I'm using common hardware, and common software, there should be binary driver compatibility.

      To Greg's points:

      re: fixing bugs. Yes, you fix the api bugs, you fix the drivers you have control over, you bump the API version, and now drivers that can't work with that change refuse to load. I highly doubt that my Diamond Stealth 64 Windows '95 video driver will work if I try to load it into XP. It ain't gonna happen.

      re: building better apis. Yes, you fix the API, bump the version number, and now drivers that can't work with the new version refuse to load.

      re: CONFIG_SMP There must be an API to deal with "core kernel structures". What the fuck is a driver doing with "core kernel structures"?

      re: GCC alignment issues- GCC is obviously not the best compiler to do this with. GCC is quite obviously not the best at anything, except being compatible across a bazillion operating systems. That's ALL GCC is good for.

      re: drivers outside the kernel tree give nothing back; Maybe they have nothing useful to give, either? WHY is it important that we know how everything the hardware manufacturer does works, if they are competent enough to make it work? YES, I agree that open source drivers and being available with the kernel are the BETTER option, but that doesn't mean that some people aren't going to want a different option.

      re: deleting functions; See also API versioning. I think I've repeated that a few times now.

      Why do you hate Linux? Why do you not want it to succeed?

      Or do you enjoy spending an entire day or longer just making some USB gadget work?

      --
      "Champagne for my real friends - and real pain for my sham friends!" http://ericblade.postalboard.com/
    40. Re:From the article... by PastaLover · · Score: 3, Insightful

      Get your facts straight. linux is not supported by major hardware (and software) companies _because_ it only has 1 or 2% market share. And don't point to macintoshes either. It took big industry a looong while before supporting hardware on the mac. But at some point they started to realise that apple was capitalizing on hardware they could have been building. The same will probably be true one day for linux.

  2. Nothing weird in that. by Anonymous Coward · · Score: 3, Interesting

    They just got too many weird patches, and had to put them somewhere.
    Business as usual.

  3. Huh? by laptop006 · · Score: 2, Interesting

    Of course it will happen, whether it's now or later is a different matter. The problem this time is that several of the core kernel devs want to keep 2.6 under active feature development, and doing that in 2.7 means that they don't get nearly as tested.

    But it will happen, and probably this year (or early next).

    --
    /* FUCK - The F-word is here so that you can grep for it */
  4. About time.... by ThisNukes4u · · Score: 4, Insightful

    I say its about time to get a real development branch going. I'm sick of 2.6 being less that optimally stable, its time for 2.7 to take the untested patches.

    --
    thisnukes4u.net
    1. Re:About time.... by Rysc · · Score: 3, Interesting

      I second that. After having the nvidia driver broken four times I'm starting to get frustrated.

      And, besides, we're approaching the time Linux kernel's typically fork: a few versions into to the series, the developers are starting to feel restricted by what they can't change in a stable kernel.

      I just want to know how crap like this makes it to Slashdot. You'd think Taco would know better.

      --
      I want my Cowboyneal
    2. Re:About time.... by vwjeff · · Score: 2, Funny

      I just want to know how crap like this makes it to Slashdot. You'd think Taco would know better.

      You must be new here.

  5. Yes, of course it will. by MartinG · · Score: 3, Insightful

    The kernel will fork to a new 2.7 branch. This is exactly what happens every iteration of kernel development. This looks like a case of poor journalistic understanding of the usual linux process and/or fear inducing sensationalist headlines.

    Even if this was a more hostile type of fork it wouldn't matter. Some amount of forking is healthy in open source.

    --
    -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
    1. Re:Yes, of course it will. by rwebb · · Score: 3, Informative

      "Paul Krill, Infoworld" seems to specialize in breathless, high-anxiety stories about rather ordinary events.

      InfoWorld
      PC World

      --
      Trusted by cats.
    2. Re:Yes, of course it will. by Bralkein · · Score: 2, Interesting

      Hey, but didn't the kernel developers say a while ago that there would not be stable and development branches of the kernel, and that it would be up to the distributions to look after final stability, or something like that?

      In fact, I have just looked up the article, and it pretty much says just that. No 2.7 development branch plans! Did they just change their minds or what? Or are they genuinely doing a proper fork of the kernel? I am confused!

    3. Re:Yes, of course it will. by nayigeta · · Score: 2, Interesting

      I am of similar opinion.

      The kernel has been forking since its early days - consider the even numbered versions running concurrently.

      The key is - will there be enough following and momentum behind each fork to push each fork into the mainstream as a focus and concentration point.

      In my mind, for each fork to be successful, it requires some single reliable individual to hand hold things - focal person roles pretty much like those of Alan, Marcelo, and Andrew.

      We must not forget that there are also special Linux kernels forked for varying purposes - like firewall, small devices, high availability, etc.

      All said, fragmentation - an unhealhty kind of forking, is definitely not desirable.

      --
      Sunset over the lake, cool mist over the bridge; A leave upon the ripples, the snow reflects its glow.
    4. Re:Yes, of course it will. by daniil · · Score: 2, Informative
      In fact, I have just looked up the article, and it pretty much says just that. No 2.7 development branch plans!

      If you look a level deeper -- ie read the article linked in the /. blurb -- you'll find that what they said was "2.7 will only be created when it becomes clear that there are sufficient patches which are truly disruptive enough to require it." Must be that this critical mass of patches is about to be reached.

      --
      Man is a slave because freedom is difficult, whereas slavery is easy.
  6. Utter bunk by Rysc · · Score: 5, Informative

    The Linux kernel forks all the time. 2.5 was a fork of 2.4 when big patches couldn't be merged otherwise. This is all terribly normal, the article was obviously written by an uninformed outsider. 2.6 will fork into 2.7, which most people wont use while big changes are made, and eventually 2.7 will become 2.8, and then for a while there will be one version. Until the next "fork," also known in Linux land as a "development version."

    --
    I want my Cowboyneal
  7. Why fork 2.6? by demon_2k · · Score: 3, Interesting

    Im not sure if i like the idea. Developers have have lives, that's why the developement is moving at the pace it is. And i like the pace the developement is at. Forking another kernel tree will split the developers apart and slow down the developement of the 2.6 kernel.

    What seems to me like a good idea is to modularize the code so that you can just plug things in and out. That way, if the kernel got forked it wouldn't be much work to remove and add support. I would also like to see projects dedicated to only certain parts of the kernel. For exampmle, one group does networking and another does video and maybe one that check and approves the code. From then on the code would be piecet together in whatever way it suits people and because there's ony one group working on a particular part of the kernel, there would be no repetition. "One fit's all" sort of spreak. One "driver" or piece of code to support some hardware would work an all forks. Then each fork would be kind of like a distribution of pieced together code.

    1. Re:Why fork 2.6? by donscarletti · · Score: 2, Informative
      You'd be supprised how modular the linux kernel actually is. One time, a couple of years ago there was some bug with the VM that was crashing my computer for some reason, so what I did is I dragged and dropped the VM section from an old version into the new version, and it actually worked. All without having to even use a terminal (except for in the compilation of cause), let alone a text editor.

      I think there are some assumptions going around that because linux is monolithic, it is also a mess of spaghetti code with no real structure. This is simply not true. My guess at why linux undergoes a complete branching process rather than a subsystem splitup is that it is simply easier and safer. Packaging everything in modules would require plenty of cross-version testing before anything is considered stable. Why bother? Who wants just a single chunk of new technology when you can have the whole thing.

      Plus, a fully split up design would make it far harder to make fast structural changes without huge amounts of negociating between teams. As it stands Torvalds can just do what he wants and everything goes right.

      --
      When Argumentum ad Hominem falls short, try Argumentum ad Matrem
    2. Re:Why fork 2.6? by Eil · · Score: 2, Interesting


      Forking another kernel tree will split the developers apart and slow down the developement of the 2.6 kernel.

      Ideally, actual development should have been all over with at 2.6.0. Patchlevels would only fix bugs, not introduce new capabilities and thus unstable code.

      Too bad it doesn't work that way with Linux. :(

      What seems to me like a good idea is to modularize the code so that you can just plug things in and out. That way, if the kernel got forked it wouldn't be much work to remove and add support.

      Well, those are the breaks with a monolithic kernel.

      I would also like to see projects dedicated to only certain parts of the kernel. For exampmle, one group does networking and another does video and maybe one that check and approves the code. From then on the code would be piecet together in whatever way it suits people and because there's ony one group working on a particular part of the kernel, there would be no repetition. "One fit's all" sort of spreak.

      I can't help but notice that what you're asking for is a microkernel. These feats would not be nearly so easy with a monolithic kernel. Also, you'd have all these factions bitching that they can't innovate since they don't have "commit" authority over other parts of the kernel that they need to change in order to add a new whiz-bang feature.

      One "driver" or piece of code to support some hardware would work an all forks. Then each fork would be kind of like a distribution of pieced together code.

      That is, until someone forks the underlying glue that binds the pieces together.

  8. New linux development process by Anonymous Coward · · Score: 5, Insightful
    It strains credulity to call the 2.7 linux kernel a "fork" of linux. Every new development version of linux always starts out by forking the old stable kernel. This is how linux 1.3, 2.1, 2.3, and 2.5 all started. It is quite irresponsible for a journalist to proclaim all this doom and gloom over what is in fact a normal development fork in a proven development process.

    In fact, out of all the news articles out there about linux 2.7, it seems (not that this surprises me) that slashdot went out of its way to pick one laden with the most possible negative FUD and the least possible useful information about what really is news with 2.7. A much better writeup can be found at LWN. In summary, the present situation is:

    • The -mm tree of Andrew Morton is now the Linux development kernel, and the 2.6 tree of Linus is now the stable kernel. This represents a role reversal from what people were expecting last year when Andrew Morton was named 2.6 maintainer.
    • Andrew Morton is managing the -mm tree very well. Unlike all the previous development kernels, the -mm tree is audited well enough that it is possible to remove patches that prove to have no benefit (and this does often happen). Bitkeeper is to some degree contributing to this flexibility, although not every kernel developer uses it.
    • The development process is going so smoothly that there may not need to be a 2.7 at all; for the first time in linux development history the developers are able to make useful improvements to linux while keeping it somewhat stable. If there is a 2.7 at all, it will be used for major experimental forks and there is no guarantee that the result will be adopted for 2.8.
    There is a story here, but you could easily be forgiven for missing it if you follow the link. The story is that linux development has changed, it is better than ever, and if (not when) 2.7 shows up, it's not gonna be the 2.7 that you're used to seeing.
    1. Re:New linux development process by m50d · · Score: 2, Interesting
      The reality is more like When there's a 2.6 that is actually useable on my system (crashes less than once every 30 mins) I'll believe that. 2.7 is not ready to split off until then.

      Well, I actually think it's "2.5 should not have become 2.6 until it didn't crash so frequently on my system". But I can understand that 2.6.0 had bugs, it was after all the first stable release, and so had a much wider audience than 2.5 did. The problem is that they've kept adding new features to it, and, like it or not, new code has bugs. What they need to do is put the cool new things in 2.7, and just concentrate on squashing bugs in 2.6. After about 3 releases of pure bugfix, no more features, the kernel tends to become stable. But as long as they're constantly adding new features to 2.6, it will be unstable.

      --
      I am trolling
  9. Idiot. by lostlogic · · Score: 5, Insightful

    The writer of that article is an idiot. The linux kernel forks after every major release in order to accomodate large patches. How did we get to where we are today? Linux-2.4 forked into 2.4 and 2.5 to allow the major scheduler and other changes to be made on a non-production branch. Then 2.5 became 2.6 which was the new stable branch. Currently there are 4 maintained stable branches that I am aware of (2.0, 2.2, 2.4, and 2.6), having a new unstable branch is just the same path that Linux has been following for years. That writer needs to STFU and get a brain.

    --
    --Brandon
  10. i don't get it by Anonymous Coward · · Score: 3, Insightful

    I think that either the writers of this article, or myself are not getting something here.

    A couple of months ago there was a general upheavel over the fact that Torvalds et al. had decided not to fork a developement tree of of 2.6.8, but rather do feature developement in the main kernel tree. The message of the article (brushing aside the compiling-applications-for-each-kernel-FUD) seems to be that they have made up their mind and fork an unstable kernel branch of anyway.

    What am I missing?

  11. Pretty baseless article. by mindstrm · · Score: 5, Interesting

    No details, no important names.. no nothing.

    There are plenty of forked kernel trees out there. Most continually merge in changes from Linus' tree, though.

    A fork doesn't matter. What matters is what it represents. If there is enough popularity that the Linux community ends up using incompatable forks, then yes, we have a problem.. but forking in no way necessarily leads to this.

    As always, the available kernels in wide use will reflect what people actually want to use.

  12. Re:Uh-oh by MartinG · · Score: 4, Insightful

    Firstly, the article is talking about linux itself, not linux distributions which are another issue and may or may not have "massive problems" of their own.

    Secondly, linux (the kernel) already "forks" every time a new development version is opened. ie, 2.1, 2,3, 2.5 etc. All this is saying is that 2.7 is about to open.

    "Fork" is not a dirty word.

    --
    -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
  13. Beginning of FreeLinux, OpenLinux and NetLinux? by NoSuchGuy · · Score: 2, Funny


    Is this the beginning of FreeLinux, OpenLinux and NetLinux?

    What about SCOLinux or MSLinux?

    --
    Grundgesetz * 23. Mai 1949 - 30. November 2007 - http://www.vorratsdatenspeicherung.de/
  14. Re:I'd Like to Run Linux -- Just No Time by MartinG · · Score: 2, Insightful

    I imagine a future where I can download a copy of Linux and it would install on my system without any configuration

    erm.. when did you last try installing linux, and which distro did you use?

    I have recently installed ubuntu and fedora 3 on hardware ranging from a fairly old PII 400 with matrox gfx and scsi to an amd64 3000 with radeon 9200 gfx and serial ata, to an ibm thinkpad r40e.

    All of these installed with almost no effort and Just Worked. (apart from power management on the laptop which took about 30 mins of googling to find a solution)

    I even had hardware accelerated gfx on _all_ of the above machines with no extra configuration of drivers to download or install.

    Really, if you want "easy to install and get running" give something like ubuntu or fedora a try. You might be pleasantly surprised.

    --
    -- MartinG To mail me: echo kewyjlcxyzvjfxbqwh | tr bcefhjklqvwxyz .@adgimnoprstu
  15. Re:Uh-oh by Epistax · · Score: 3, Interesting

    Already there are massive problems with dependencies.

    Tell me about it. When I try installing older programs I get compile errors because the libraries aren't backwards compatible, or ./configure won't be able to find the libraries because the version installed is too new.

    I think at some point everyone needs to get together and say OK. Everything from this point on will be compatible with everything from this point on. No more of this crap. One standard installation procedure for every distribution (but each distribution does things its own way). If RPMs are so horrible, then stop releasing everything as RPMs!

  16. Run, Chicken Little, Run! by Minwee · · Score: 4, Funny

    Oh no! If this sort of thing is allowed to happen then before long we will start seeing seperate kernel forks for people like Alan Cox, Andrea Arcangeli and Hans Reiser. It could even lead to every major Linux distribution applying their own patches to their own forked kernels.

    Then where would we be?

    1. Re:Run, Chicken Little, Run! by Anonymous Coward · · Score: 2, Insightful
      Dependency hell?

  17. Re: Run Windows? -- Just No Time by Anonymous Coward · · Score: 3, Funny

    As a person with Linux, I just don't have time to know everything about Windows to install it and keep it running. To me, the amount of time required to know Windows is only one of the things keeping me away. On top of this is all the spyware, viruses, constant severe security flaws, instability and slowdowns that just don't make it a viable system.

    I imagine a future where I can buy a copy of Windows and it would work just like Linux. If this could be a reality today, I would maybe consider Windows for some non-technical people.

  18. Re:I'd Like to Run Linux -- Just No Time by asciiRider · · Score: 5, Insightful

    Why is it that every Windows XP user thinks the goal of the Linux community is to convince windows user to make the switch?

    Dude - just stick with Winblows. You have no time to "know linux", as you put it, so just stick with what you know. You can post on Slashdot either way.

    Please, developers, don't dumb Linux apps/distros down so much that it looks and feels like Windows.

  19. Letter to Editor... by runswithd6s · · Score: 4, Informative
    Here's a copy of a letter I wrote to the online Magazine editor that this article was posted on.
    From: Chad Walstrom
    Subject: Comment: Is Linux about to fork?
    Date: Fri, 19 Nov 2004 19:43:15 -0600
    To: kierenm@techworld.com

    I'm writing to comment on the article "Is Linux about to fork?" written by Paul Krill, posted on the 18th of November, 2004. Paul really doesn't do his homework, does he? Nor does he understand the development process of the Linux kernel. Linux has ONLY been around for ten years, with a well documented idea behind the "fork" he is speaking about.

    Currently, the Linux kernel is at version 2.6.9, with 2.6.10 peeking around the corner. This is the STABLE kernel, the one receiving most of the attention over the last year or so. The kernel eventually always forks to a DEVELOPMENT branch, in this case the 2.7 branch. Is Linux about to fork? Yes! Does this have any correlation to the Unix idea of forking? No!

    Kernel-Trap.com covered the recent possible changes to the Linux Development Model in http://kerneltrap.org/node/view/3513. In general, forks are good things in the Free Software environment; it's part of life.

    For a straight FAQ Q&A style of answering the question: http://www.tldp.org/FAQ/Linux-FAQ/kernel.html#linu x-versioning

    Q: How Does Linux Kernel Versioning Work?

    A: At any given time, there are several "stable" versions of Linux, and one "development" version. Unlike most proprietary software, older stable versions continue to be supported for as long as there is interest, which is why multiple versions exist.

    Linux version numbers follow a longstanding tradition. Each version has three numbers, i.e., X.Y.Z. The "X" is only incremented when a really significant change happens, one that makes software written for one version no longer operate correctly on the other. This happens very rarely -- in Linux's history it has happened exactly once.

    The "Y" tells you which development "series" you are in. A stable kernel will always have an even number in this position, while a development kernel will always have an odd number.

    The "Z" specifies which exact version of the kernel you have, and it is incremented on every release.

    The current stable series is 2.4.x, and the current development series is 2.5.x. However, many people continue to run 2.2.x and even 2.0.x kernels, and they als o continue to receive bugfixes. The development series is the code that the Linu x developers are actively working on, which is always available for public viewing, testing, and even use, although production use is not recommended! This is part of the "open source development" method.

    Eventually, the 2.5.x development series will be "sprinkled with holy penguin pee" and become the 2.6.0 kernel and a new stable series will then be established, and a 2.7.x development series begun. Or, if any really major changes happen, it might become 3.0.0 instead, and a 3.1.x series begun.

    --
    assert(expired(knowledge)); /* core dump */
    1. Re:Letter to Editor... by Anonymous Coward · · Score: 2, Funny
      Eventually, the 2.5.x development series will be "sprinkled with holy penguin pee" and become the 2.6.0 kernel

      And THAT ladies and gentlemen is what seperates Linux kernel docimentation from the standard IBM documentation.

    2. Re:Letter to Editor... by Gannoc · · Score: 2, Insightful

      For a straight FAQ Q&A style of answering the question: http://www.tldp.org/FAQ/Linux-FAQ/kernel.html#linu x-versioning

      Christ.

      I'm not making fun of you. What you said was completely accurate, but when you're dealing with clueless people, you need to speak simply and plainly. "holy pengiun pee?" C'mon.

      Quick example:

      To Whomever:

      Your most recent article regarding the upcoming linux fork may be confusing to your readers. The current version of Linux is 2.6. As new enhancements and bug fixes are developed and tested, they are added to this 2.6 kernel. This is similar to the way Microsoft puts out service packs on their current version of the Windows XP operating system.

      When significant or cutting-edge features are added, the team in charge of maintaining the linux kernel needs to decide whether to "fork" the kernel to a new version. Again, this is similar to how Microsoft made decide to put a new feature into Longhorn instead of patching it in to Windows XP in a service pack.

      Forking simply means that a new release of Linux is being actively prepared.

  20. It is Linus's fault. by IGnatius+T+Foobar · · Score: 4, Insightful

    Hold on, take this into consideration before you hit that "flamebait" button. I'm responsible for a large number of Linux systems at a hosting center, and this is our single biggest complaint:

    There needs to be a consistent driver API across each major version of the kernel.

    A driver compiled for 2.6.1 should work, in its binary form, on 2.6.2, 2.6.3, and 2.6.99. If Linus wants to change the API, he should wait until 2.7/2.8 to do so.

    The current situation is completely ridiculous. Anything which requires talking to the kernel (mainly drivers, but there are other things) needs either driver source code (watch your Windows people laugh at you when you tell them that) or half a dozen different modules compiled for the most popular Linux distributions. These days, that usually means you're going to get a RHEL version, and possibly nothing else. What happens when you're competent enough to maintain Fedora or Debian, but you don't have driver binaries? (Yeah I know, White Box or Scientific, but that's not the point.)

    In fact, I recently had to ditch Linux for a project which required four different third-party add-ons, because I couldn't find a Linux distribution common to those supported by all four. We had to buy a Sun machine and use Solaris, because Sun has the common sense to keep a consistent driver API across each major version.

    Yes, I've heard all the noise. Linus and others say that a stable driver API encourages IHV's to release binary-only drivers. So what? They're going to release binary-only drivers anyway. Others will simply avoid supporting Linux at all. LSB is going to make distributing userland software for Linux a lot easier, but until Linus grows up and stabilizes the driver API, anything which requires talking to the kernel is still stuck in the bad old days of 1980's-1990's. Come on people, it's 2004 and it's not too much to expect to be able to buy a piece of hardware that says "Drivers supplied for Linux 2.6" and expect to be able to use those drivers.

    --
    Tired of FB/Google censorship? Visit UNCENSORED!
    1. Re:It is Linus's fault. by geg81 · · Score: 3, Insightful

      A driver compiled for 2.6.1 should work, in its binary form, on 2.6.2, 2.6.3, and 2.6.99. If Linus wants to change the API, he should wait until 2.7/2.8 to do so.

      That's deliberate...

      In fact, I recently had to ditch Linux for a project which required four different third-party add-ons, because I couldn't find a Linux distribution common to those supported by all four. We had to buy a Sun machine and use Solaris, because Sun has the common sense to keep a consistent driver API across each major version.

      ... and that's the reason why. If it were easy to use binary drivers, more and more drivers would become binary. For making Linux distributions easier to manage, it would be nice if binary drivers were easier to manage and distribute for Linux. But the fact that that would make distribution of binary-only drivers easier is considered a disadvantage by many.

      Overall, please either by from open source friendly hardware vendors, or pay the price for a proprietary operating system. You have chosen the second option, so deal with it.

    2. Re:It is Linus's fault. by drinkypoo · · Score: 3, Informative

      There needs to be a consistent driver API across each major version of the kernel.
      A driver compiled for 2.6.1 should work, in its binary form, on 2.6.2, 2.6.3, and 2.6.99. If Linus wants to change the API, he should wait until 2.7/2.8 to do so.

      The first digit is the major version; aka 1.x, 2.x. The second digit is known as the minor version. From your examples, you appear to be asking for a consistent driver API across each minor version.

      HTH, HAND.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    3. Re:It is Linus's fault. by IO+ERROR · · Score: 2, Insightful
      I think this doesn't get enough attention because most of the hardware Linux people use on a daily basis has drivers included with the kernel, and for the most part they work from version to version. So what if a vendor puts out binary-only drivers. It's a free market; go buy their competitor's hardware. That's the only way to get their attention.
      Hello, ${VENDOR}, I am writing to you today to let you know that I looked at your ${HARDWARE} and was very impressed. It's the best thing since sliced bread! However, I bought your competitor ${VENDOR_2}'s ${HARDWARE_2} today, because they provide source code with their Linux drivers, and you do not.
      In short, don't like binary-only drivers? Don't give them any money.
      --
      How am I supposed to fit a pithy, relevant quote into 120 characters?
    4. Re:It is Linus's fault. by captaineo · · Score: 4, Informative

      The first thing that disappears when you don't get paid as a developer is backwards compatibility. It's the type of thing only paying users (vs casual users and developers) care about.

      I completely agree and wish the kernel API were kept more stable. Which is saying a lot, as the Linux kernel API is currently way more stable than glibc, GCC, and most user-space libraries. Virtually all of my Linux trouble-shooting time over the last few years has been caused by API versioning issues in glibc and/or GCC.

    5. Re:It is Linus's fault. by giampy · · Score: 2, Interesting

      > That's deliberate...
      > ... and that's the reason why.
      > If it were easy to use binary drivers, ...

      ohh i see, so the drivers API are changed not to improve them but for the only purpose of make the using of binary drivers impossible !!

      it sounds an awful lot like MS changing some code for the only purpose of making interoperability with other platforms very hard ...

      and all this for what ??

      > is considered a disadvantage by many.

      ohh i see, those unspecified "many" have to be right right ? like all those peole who believed that earth was flat, some time ago ...
      that's what's called a scientific approach !

      Mod me flamebait if you will, there's always a first, but I honestly think that it is exactly this hobbystic, unprofessional, and not-caring way of thinking that hinders the widespread adoption of linux.

      Which i still believe it would be a very good thing for many reasons, but maybe it's just me ...

      --
      We learn from history that we learn nothing from history - Tom Veneziano
    6. Re:It is Linus's fault. by dazk · · Score: 2, Interesting

      Uhm, where exactly is widespread adoption of Linux really in danger? What is it you want? A mostly closed source System? Use Solaris or whatever else if you want that. You might have to switch to AIX or HPUX soon since Solaris is about to be opensourced.

      It definately is a good thing that there are efforts to keep as many drivers as possible open source.

    7. Re:It is Linus's fault. by Mnemia · · Score: 2, Insightful

      I think you may be missing the point of OSS. These things (breaks to backwards compatibility) aren't really as much of a problem on Linux as they would be on Windows because virtually all of the code in question is available in source form. You can always fix the problem by recompiling stuff. On Windows if an operating system API changes you have to wait for whoever made all of your software to fix and recompile it and then redownload/repurchase it. This is part of why Microsoft is unable to fix many longstanding problems with Windows and the Windows API: they are slaves to backwards compatibility. In fact the whole .NET thing seems to me to be an attempt to escape from this limitation and enjoy some of the benefits that open source now does.

      Virtually all of the problems you describe are problems with binary packaging rather than with the core Linux software itself (with a very small number of exceptions such as the GCC 2.9.x -> GCC 3.x transition; and even that was fixable through recompilation). All I can say is get a better distro. Debian doesn't have so many problems with this, and Gentoo and other source-based distros certainly don't either. This is in fact why I stopped using Red Hat and switched to Gentoo in early 2002. You don't have many binary version compatibility problems on Gentoo because it doesn't use binary packages except where the software is not available in any other form. It thus manages to parallel the development of most open source software very well: it isn't a problem when developers break an API...you just use a single command to recompile everything that was broken.

      Open source developers often don't worry about maintaining binary compatibility because it isn't a problem if you just recompile. Using binary packages just invites problems: whoever makes your distro has to stay on top of the constant changes in the API. So if you do use binary packages, at least do yourself a favor and use a well-tested distro like Debian.

    8. Re:It is Linus's fault. by Cyno · · Score: 2, Interesting

      but until Linus grows up and stabilizes the driver API

      How did this get modded insightful? Are you saying you know more about designing a kernel than Linus? Most hardware either has GPL drivers embedded in the kernel which automatically get updated to new changes in the API, or no driver at all. For those binary-only models I don't see nVidia having any problems. Maybe the people making the binary-only drivers need to learn how to do their job. Ever think of that?

      Come on people, it's 2004 and it's not too much to expect to be able to buy a piece of hardware that says "Drivers supplied for Linux 2.6" and expect to be able to use those drivers.

      Yes it is too much to expect. Its only 2004. There are many pieces of hardware that still don't support Linux. And it has nothing to do with the driver API or how difficult it is/isn't to support. Most hardware would already be supported for free if they had released the specs.

      Want to have your cake and eat it too? Well, we don't play that way. Its more like put up or shut up.

    9. Re:It is Linus's fault. by ComputerSlicer23 · · Score: 2, Insightful
      There needs to be a consistent driver API across each major version of the kernel.

      Why? You tell a nice little story about running 4 different binary only drivers. You represent a very, very niche market.

      Of anyone I've ever read or heard of, you are absolutely unique. I've run and installed Linux on hundreds if not thousands of computers. The only binary only driver I've ever had to install is the nVidia one. Even that is merely just because I wanted better performance. I could easily use the machine just fine without it.

      I've installed SCSI cards, IDE cards, RAID controllers for SCSI drives. I've installed SAN drivers. I've installed up to Gigabit cards. I've installed scanners, mice and keyboards, printers, CD burners, soundcards, USB and Firewire drives. I've had desktop cameras. I've had digital cameras that used USB connectors. I've used magneto-optical drives. Heck, the Parallel port Zip drive worked better under Linux then it did under Windows. I've hooked up flash readers. I've connected a myriad of perphials. What on earth are you connecting up to a machine that you need 4 separate binary drivers? Are you sure they aren't replaceable with a component that would have worked with drivers?

      I'd much rather have the developers have the ability to fix and solve bugs rather then cludge together something that might or might not work.

      For the most part, 99% of the driver API is in fact stable inside of a single kernel minor release (technical speaking 2 is the major kernel release, 4 is the minor release) kernel series (the single exception I can think of is that 2.4.10 completely broke the VM subsystem from 2.4.9). Most of the other things are merely your vendor being too lazy to get off their butt and release the binary only driver. It's not particularly hard. If what your are using doesn't support both Suse and RedHat, put down the box, and back away.

      Finally, just like the Apache guys have been saying for years, "We have a lot more drivers to maintain then you do, if we change the API we have a very good reason to". It's not like Linus goes and makes changes willy nilly. Generally speaking, it's been to make the API easier to use, to refactor common parts into higher layers for code reuse, or to use a more efficient/scalable model.

      You can keep saying that it really needs a decent driver model. No it doesn't. It is what it is, precisely because they refuse to have choke points to when innovation can happen. You might love it if it does. Personally, I like it not having choke points. I review the hardware I plan on hooking up to a machine, and ensure that all the perphials do what I need them to do, and that they are usable under the OS I run.

      Next you'll complain because your x86 machine doesn't support Nubus, or Altivec instructions. Pick things that have OS drivers and your problems go away.

      Lastly, you are complaining to the wrong guy. Linus isn't your man there. Try complaining about the distributors. The distro people are the ones who make the actual final release you are using. They could just wait until tail end of the kernel life cycle and release it then with a stable API. They could maintain a stable API for you. However, you are not common in terms of users. If everyone clamoured for it, they'd get it. Heck, if that's really what you want, start using the 2.2 series kernel. It has a world class stable driver API. The problem is Linux moves fast and you want to stay with the cutting edge. It's not Window's is releasing their development stuff as early or as often as Linux is. I'm fairly sure that by the time you get the Windows kernel, it's probably similar to roughly where the 2.4 kernel is right now (maybe 6 months or a year ago). By the time you get Windows software, it's old and stale (in terms of true innovation and change, Microsoft is fairly serious about limiting architectural change, just like the 2.2 and 2.4 guys are right about now). Pick what you want.

      Kirby

    10. Re:It is Linus's fault. by Mornelithe · · Score: 2, Informative

      I worked at a company where we used a certain web-based collaboration suite. Part of my job was to fix existing bugs in said suite some of which were caused by our particular setup. For our particular version of the suite, this was their supported setup:

      Weblogic 7
      JDK 1.3.x

      Now, our Weblogic people, whom we had no control over, decided to upgrade to Weblogic 8. Weblogic 8 requires JDK 1.4. It won't work with 1.3, or at least, I couldn't get it to work in my hours of trying (Note, 1.3 to 1.4 is just a "minor" version change, not a major revision like 1.x to 2.x (which, I might add, usually signals a significant break in API compatibility, so you probably should have known), although with Sun's naming conventions, you never really know).

      Now, when you use our particular version of the collaboration software with JDK 1.4 and Weblogic 8, it breaks various parts of the application. The solution? "We don't know what the problem is but it's fixed in our upgrade release." Now, we could just upgrade our suite of collaboration software, except it will break tons of stuff that we built on top of it, I assure you.

      I had to dig through their source and track down what was broken and fix it myself. Keep in mind, this suite is the best in its realm, so with anyone else, you'd probably be worse off.

      So don't tell me that Open Source has problems with version compatibility that commercial software just doesn't have. These systems are all produced by big corporations, and they just flat don't work between revisions. It's a struggle whatever you use.

      --

      I've come for the woman, and your head.

  21. Ours is not to wonder why. by Doc+Ruby · · Score: 4, Interesting

    We don't know why this reporter is spreading Fear, Uncertainty and Doubt. Maybe they were misinformed, and lack critical skills required to be a journalist. Maybe they were informed, but are looking for something sensational to get readers (it worked). Maybe they're trying to impress their mother somehow, without even realizing they're making up for a playground trauma from 1983. Who knows? Who cares? They're a FUDder - we're interested in the damage they cause, not the damage that was done to them. That's their problem, unless we propose a massive mental health makeover for the world's journalists. That would probably decimate the ranks of the industry, allowing them to get real jobs.

    --

    --
    make install -not war

    1. Re:Ours is not to wonder why. by Tim+C · · Score: 3, Insightful

      Well, if that's FUD, then so are upwards of 70% of anti-Windows comments here.

  22. Strength of Linux by b0lt · · Score: 2, Interesting

    I believe that the strength of Linux comes from the fact that it has a central core, which is compatible with basically everything across distros. This makes faster development, and combined with a charismatic leader (Go Linus! :o) makes a very strong platform for an OS. These are my personal beliefs, so feel free to flame me if you disagree :)

    -b0lt

    --
    got sig?
  23. Irresponsible by Craig+Maloney · · Score: 2, Interesting

    I'd imagine any article that talks about Linux Forking would have at the very least grabbed one or two quotes from Linus before going to print. Linus is only mentioned once in the article, and that is a passing reference as the owner of the Linux Kernel. And while Andrew Morton may have mentioned what was going on in the interview, the reporter made sure it didn't show up in the article. Irresponsible.

  24. kernel panic by Doc+Ruby · · Score: 2, Informative

    The reporter says that some developers have made big changes, in different directions, to their copies of the kernel source that Linus won't accomodate in a single encompassing kernel. Like desktop and server versions. So he'll have to fork it. Why forking the kernel, rather than just the magic "#ifdef DESKTOP_KERNEL_" that keeps all the manageability of a single kernel source version, is the solution, is not addressed. Combined with the rest of the bad logic and information reported in the article, this is just journalistic kernel panic, and probably not a real issue for the kernel. At least the fork - divergent execution scenarios are a valid issue for maintainers. But there are so many ways to manage source control that punting with a fork seems desperate, and unlikely.

    --

    --
    make install -not war

  25. My response: by Performaman · · Score: 2, Funny

    What the fork?

    --

    I have gas, but my car uses petrol.
  26. News in disguise ... by foobsr · · Score: 2, Interesting

    ...

    erm ...

    "We all assume that the kernel is the kernel that is maintained by kernel.org and that Linux won't fork the way UNIX did..right? There's a great story at internetnews.com about the SuSe CTO taking issue with Red Hat backporting features of the 2.6 Kernel into its own version of the 2.4 kernel. "I think it's a mistake, I think it's a big mistake," he said. "It's a big mistake because of one reason, this work is not going to be supported by the open source community because it's not interesting anymore because everyone else is working on 2.6." My read on this is a thinly veiled attack on Red Hat for 'forking' the kernel. The article also give a bit of background on SuSe's recent decision to GPL their setup tool YAST, which they hope other distros will adopt too."

    CC.

    --
    TaijiQuan (Huang, 5 loosenings)
  27. Is Mr. Krill some sort of AI? by Maljin+Jolt · · Score: 4, Funny

    I have read the article three times but still it looks to me like a random collection of irrelevant sentences unrelated to each other. Maybe it would make more sense if Paul Krill himself was written in lisp, or drank less if he's a real biological entity. This article looks like a random google cache copy and paste made in php.

    --
    There you are, staring at me again.
  28. Re:I'd Like to Run Linux -- Just No Time by geg81 · · Score: 2, Informative

    I imagine a future where I can download a copy of Linux and it would install on my system without any configuration and every option would be through an option menu, like our Slashdot prefs. If this could be a reality today, I would drop XP in a heartbeat.

    Install SuSE, RedHat, or Ubuntu: they are easier to install than Windows XP and come with tons of applications. They even come with excellent printed documentation in case you do need to look something up.

    Even easier, buy a PC with Linux pre-installed: you just plug it in and it works.

  29. Re:Uh-oh by Angstroem · · Score: 3, Insightful
    I think at some point everyone needs to get together and say OK. Everything from this point on will be compatible with everything from this point on. No more of this crap.
    Actually, we had this like 20 years ago. Whenever you upgraded your machines (at least in home and semi-pro market) there was a sharp cut. Hardware changed, the OS was not even remotely the same, you had to get new software. Sometimes you even got converters to re-use old data.

    Someone decided that this is "bad" (and which finally opened the market for DOS/Windows), which I still don't fully get. If the software/system is still usable to me, I keep on using it (I'm still running my trusty old Atari in the studio for average MIDI sequencing). If I need to get a more powerful machine and/or the software will only be supported on this new machine -- what is this any different to todays Windows/Office situation?

    With each new Windows the user interface changes (think of 3.11->95; XP anyone?), new data formats which are not backward compatible are introduced (.doc), and all they ensure is that you can load your old documents and please, please use the new formats as quickly as possible to make a lot of people buy the latest release...

    If your Linux application breaks because it requires some stoneage whatever library, then just install it. For instance, people are used to carry a shitload of same-but-of-different-version DLLs on Windows systems and don't seem to object it.

    With wide acceptance of RPMs we also accepted the breaks-if-lib-version-of-the-day-is-not-present kind of behavior... (The next logial step would be including required libraries in the RPMs just as every Windows program will come with all required DLLs.)

  30. Wow, this article is pure uneducated guesswork... by discord5 · · Score: 5, Insightful

    Well, this was fun to read. This article is about as educated about the subject as the average donkey.

    In a worrying parallel to the issue that stopped Unix becoming a mass-market product in the 1980s - leaving the field clear for Microsoft

    Uhm, what gave MS the edge in the 80s was cheap i386 (well, actually 8088) hardware, and a relatively cheap OS (MS-DOS). Unix servers cost an arm and a leg in those days, and many companies/people wanted a pc as cheap as possible. Buying an i386 in those days meant running DOS, and the "marketplace" standardized around MS-DOS.

    Each version of the kernel requires applications to be compiled specifically for it.

    Utter bull. Upgrade kernels as much as you like, it won't break software unless you change major/minor numbers perhaps. The same thing will happen to windows if you start running stuff for win2k on win'95. But this is rather a matter of features in the kernel, not compilation against the kernel.

    So at some point, Linux founder Linus Torvalds will fork off version 2.7 to accommodate the changes, Morton said at the SDForum open source conference.

    And the big news is? This happens every couple of years, with stable versions having even minor version numbers and unstable versions having odd minor version numbers. This helps admins and users to effectively KNOW which versions are good for everyday use, and which versions are experimental and for developers.

    He cited clustering as a feature sought for Linux.

    Well, imagine a Beowulf cluster... How long have those patches existed? There's several ways to build a cluster as long as you patch your kernel.

    OSDL does not anticipate, for example, having to ever rewrite the kernel, which would take 15 years, Morton said.

    And why on earth would they want to do that? Linux is on the right track, so why bother with an entire rewrite of good functional code with good design.

    Open source has focused on software such as the operating system, kernels, runtime libraries, and word processors.

    It's also focussed on multimedia (xmms, mplayer, xine), webservers (apache), mailservers (sendmail, qmail, postfix)... I'd rather have people say that open source has focussed on internet servers than stuff it needs to make an OS run and wordprocessors. This like saying that an oven is primarily being used for making toast, while actually it also bakes cake, pizza and whatever you toss inside.

    I'm sorry, this kind of article belongs in the trashbin. Either the journalist doesn't know what he's writing about, or he's being paid to know nothing about the subject. One of the things that keeps suprising me in business IT journalism is the lack of knowledge these people have about the subjects they're writing about.

  31. Re:I'd Like to Run Linux -- Just No Time by Cheeze · · Score: 2, Insightful

    you're placing the blame on linux. Windows doesn't create drivers for that fancy new camera you bought, the camera company does. Is the problem really linux, or is is the companies that don't release the drivers?

    I think linux gets the blame, but you wouldn't expect microsoft to write drivers for your camera.

    Case in point, I bought a HP scanner/copier/printer about a week ago, and it took about 2 hours of constant reboots, driver conflict errors, and other problems to get it to work correctly. The end result had me download almost 400MB worth of drivers from hp.com, uninstall the printer, and reinstall it with the new drivers. The drivers on the cd were bad. That's not an "everything works" scenario. Yeah, and that's with WindowsXPhome on a HP workstation connected to the printer with usb. A problem like that is NEVER a windows problem, it's always a problem with the device. If I were using linux, it would be linux's problem, and not the device.

    --
    Why read the article when I can just make up a snap judgement?
  32. Fork?!?!? by KennyP · · Score: 2, Funny

    I thought it was all about the spoon and that there is no spoon...

    Now I'm cornfused!

    Kenny P.
    Visualize Whirled P.'s

  33. FUD by erroneus · · Score: 2, Insightful

    Knowing the Kernel developing community as I do, the threat of forking would result in a movement to unite in some way. Even if a fork occurrd, the population would essentially choose one and ignore the other leaving it to die.

    The fact that patches exist, large or small, is what keeps the main kernel working. So for special implementations, patched kernels exist and everyone is cool with that. I have yet to see a patch that isn't from the main kernel and I don't forsee a situation necessitating that it not be.

    I think we should look into the motivation of this article that cites no specific information or sources. It's pure speculation.

  34. So Some Want a Spoon.... by 3seas · · Score: 3, Funny

    ....But fail to realize that the spoon is like MS windows without competition... grows fat, bloated and contains the manifestation of the user frustration function so as to make people need to upgrade the spoon....and plug up holes in it...

    Forking is a better evolution process as forking is only part the the process. The other part is re-integration of new and wonderful things resulting from forking..

  35. Kernel forking by YetAnotherName · · Score: 5, Funny

    For the kernel itself to support fork(2), you'd have to have a meta-OS running the kernel, similar to a supervisor OS running as a user task in Mach.

    But I can see things deteriorating rapidly: someone will want vfork for kernels, someone else will implement kernel-to-kernel pipes, someone else will make vfork obsolete, someone will complain about kernels not getting SIGCHLDs from their child kernels, etc.

    What? No, of I course I didn't read the fsck'n article ... not even the summary!

  36. Re:I'd Like to Run Linux -- Just No Time by discord5 · · Score: 2, Insightful
    Why is it that every Windows XP user thinks the goal of the Linux community is to convince windows user to make the switch?

    Because some people are overzaelous in their free software speeches to the masses. Linux users have a bad rep for a few bad elements.

    Dude - just stick with Winblows. You have no time to "know linux", as you put it, so just stick with what you know.

    Everyone should use what they want to use (at home at least). You like MacOS? Be my guest. Windows? Go right ahead. Linux? Hell yeah! People should be encouraged to try and use open source software, not forced. If people don't have the time to learn new things, let them use whatever they want.

    Please, developers, don't dumb Linux apps/distros down so much that it looks and feels like Windows.

    Please, end-users, stop having this elitist feeling because you're running linux. If apps and distros want to dumb down their applications to increase the amount of users, let them. A good example is perhaps lprng versus cups. Cups is easy to setup and use, lprng is not that easy to setup and use. If normal users can setup their printservers using an easy tool, and power users can set it up with their favourite tool, who is going to complain? It's a matter of choice.

    As soon as we make linux distributions easy enough for Joe Common to use, and decide that Random J. Hacker can't do things the way he wants to do them then we're in trouble. Then it's no longer a matter of choice, but a matter of locking in people to solutions that only work in 80% of all cases.

  37. People should write in instead of calling "FUD" by Morosoph · · Score: 3, Informative

    Journalists tend to be ignorant, so a little education can come in useful. Here's my letter to the editor:

    Re: Is Linux about to fork?

    Dear Kieren McCarthy,

    I cannot believe this article:
    http://www.techworld.com/opsys/news/index.cfm?News ID=2648&Page=1&pagePos=2

    The Linux kernel has historically alternated between stable
    (even-numbered) sets: 2.0, 2.2, 2.4, 2.6, and odd-numbered development
    sets. For this to be cast as a major disaster now that the next
    development kernel is expected to be starting up is extremely odd. If
    this is forking, it is forking only in the most pedantic sense, and yet
    Paul Krill's article paints this as a major problem. This portrays a
    simple lack of understanding of the Linux development process. The
    article is therefore more confusing than informative.

    Yours sincerely,

  38. It's called a "branch"!!! So much FUD for nothing by borgheron · · Score: 3, Interesting

    Apparently the author is entirely unfamiliar with the concept of creating a branch to isolate disruptive changes to a system.

    Odd numbered kernels do not get released, only even numbered ones. The scheme in Linux development is odd = unstable, even = stable.

    I won't be suprised to see something from OSDL calling this article a piece of crap by tomorrow.

    GJC

    --
    Gregory Casamento
    ## Chief Maintainer for GNUstep
  39. They make it out like this is something NEW... by Theovon · · Score: 2, Informative

    Forking the kernel is a normal part of the development process. It's happened numerous times before, and it's the usual way of making significant leaps in functionality.

    These guys are making it out like some majorly new thing's going to happen that's going to change everything. Did everyone suddenly forget about how 2.4 forked to 2.5 which became 2.6? Give me a break.

  40. Re:BS.. by ickpoo · · Score: 2, Insightful

    I agree. I recently installed Windows on an old laptop that I have. The laptop is old and slow so I installed Windows 98 on the machine. (Son needs it for writing papers in Word). The machine has a NetLux pcmcia ethernet card. Under Linux the network card worked out of the box, under windows it needs a driver disk. The driver disk doesn't exist anymore and neither does NetLux. So, no driver and not ethernet.

    --
    I am not a script! .Sig?
  41. apt is VERY useful... by caveat · · Score: 2, Informative
    ...here's what it told me when I installed NetHack on OS X:
    The following package will be installed or updated:
    nethack
    The following 47 additional packages will be installed:
    audiofile audiofile-bin audiofile-shlibs bzip2-shlibs cctools-extra docbook-dsssl-nwalsh docbook-dtd docbook-xsl esound fink-mirrors fink-prebinding gdbm3 gdbm3-shlibs gettext gettext-bin gettext-dev giflib gmp gmp-shlibs gnome-libs-dev gnome-libs-shlibs gtk+ gtk+-data gtk+-shlibs gtk-doc imlib imlib-shlibs libiconv libiconv-bin libiconv-dev libxml2 libxml2-bin libxml2-shlibs libxslt libxslt-shlibs ncurses-shlibs netpbm netpbm-shlibs openjade opensp3 opensp3-shlibs orbit orbit-dev orbit-shlibs sgml-entities-iso8879 xfree86 xfree86-shlibs
    Do you want to continue? [Y/n]
    FORTY-SEVEN DEPENDENCIES. It ended up taking about an hour to finish, but I don't even want to think about how hellish it would have been to do by hand.
    --

    Facts do not cease to exist because they are ignored. - Aldous Huxley
  42. Look at it this way by r00t · · Score: 2, Insightful

    It's better to break binary drivers early than to
    break them late.

    If all 2.6.x. kernels supported a driver, you'd just
    accept that driver... until the 2.8.0 kernel comes
    out. Then what? The vendor doesn't care; they got
    their money. They either want to sell you new
    hardware, or they've gone out of business. So you'd
    then expect Linus to add some serious bloat for
    supporting a driver ABI translation layer to let you
    run ancient drivers on modern kernels.

    Then what if you upgrade to a 64-bit processor?
    You want Linux to emulate the old stuff????
    That's what made Windows 95 so lovely.

    The way Linus does things, you and these corporations
    can't ever forget that binary drivers are 2nd-class.

  43. The Reporter Doesn't Seem to Understand OSS by Jameth · · Score: 2, Insightful

    I've seen a lot of the flaws in the article pointed out, but I'd like to note this too:

    "Top contributors to the Linux kernel have been Red Hat and SuSE, he said. Also contributing have been IBM, SGI, HP, and Intel."

    Usually, when talking about the Kernel, it's valid to at least note some individuals, such as, say, Linus.

  44. Re:Uh-oh by rogabean · · Score: 2, Insightful

    so if application I write took advantage of the say GDI bug in Windows, but my app was dependent on that bug being present, MS shouldn't fix the bug??

    You see there's a flaw in your logic.

    Not fixing a bug to allow some bad code that uses said bug to run is just plain ignorant.

    --
    "why don't you just slip into something more comfortable...like a coma!"
  45. Kernel Fork by loconet · · Score: 5, Informative

    I notice a number of posts indicating that this is just pure uninformed journalism but is it? Or is he actually just blowing up a different related issue out of proportion.

    In the Linux Kernel Development Summit back in July, the core developers announced they weren't creating a 2.7 development kernel any time soon (discussed here and here).

    Developers liked the way things were going with the new BitKeeper in use by Linus and at the time, they didn't see the need to fork a 2.7.

    Traditionally before BitKeeper, kernel maintainers would send Linus 10-20 patches at once, then wait for him to release a snapshot to determine whether or not the patch made it in. If not, they would try again. During the 2.5 development cycle, problems started over dropped patches and that is when Linus decided to try BitKeeper.

    According to Greg Kroah-Hartman, kernel maintainer, Bitkeeper has increased the amount of development and improved efficency. From 2.5 and 2.6, they were doing 1.66 changes per hour for 680 days. From 2.6.0 to 2.6.7 they were at 2.2 patches per hour thanks to the ability of wider range of testing of patches that went into the tree. The new process is - 1) Linus releases a 2.6 kernel release. 2) Maintainers flood Linus with patches that have been proven in the -mm tree 3) After a few weeks, Linus releases a -rc kernel 4) Everyone recovers from a load of changes and starts to fix any bugs found in the -rc kernel 5) A few weeks later, the next 2.6 kernel is released and the cycle starts again.

    Because this new process has proved to be pretty efficient and is keeping mainters happy, it was predicted that no new 2.7 kernel was to be forked any time soon unless a set of changes appeared big enough and intrusive that a 2.7 fork is needed. If that is the case, Linus will apply the experimental patches to the new 2.7 tree, then he will continue to pull all of the ongoing 2.6 changes into the 2.7 kernel as the version stabilizes. If it turns out that the 2.7 kernel is taking an incorrect direction, the 2.7 will be deleted an deveryone will continue on the 2.6. If 2.7 becomes stable, it will be merged back into 2.6 or will be declared 2.8.

    In conclusion, there was no plan for a 2.7 any time soon thanks to maintainers working well in the current setup but this was not carved in stone. It might just be that big enough changes are calling for a fork.

    --
    [alk]
  46. Re:Wow, this article is pure uneducated guesswork. by MikeBabcock · · Score: 2, Insightful

    I'm only really replying to give your comment a bit more weight -- that writer is as dense as lead.

    I'm not sure he's ever actually followed kernel development before.

    For all those wanting to know whats going on without reading the linux-kernel mailing list, just run over to Kernel Traffic -- a summary of the week's happenings on the list.

    --
    - Michael T. Babcock (Yes, I blog)
  47. No, the kernel is not forking by neurophys · · Score: 4, Informative

    PJ at http://groklaw.net/ has a comment on the forking. Seems like the fork rumor is due to a misunderstanding. The forking in the talk was about 2.7 being a fork off of 2.6

  48. Somebody Should Point Out by Master+of+Transhuman · · Score: 2, Informative

    that the use of the pronoun "he" in the article in reference to Kim Polese's remarks was wrong - Kim is (very) female.

    --
    Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
  49. Serious question: by deadlinegrunt · · Score: 4, Insightful

    I am not trolling nor do I disagree with the majority of your post. I am however a bit curious about this statement:

    "It pisses me off that I can no longer use my webcam because the driver maintainer can't keep up with every variation of the kernel..."

    Since this is a webcam I am making an assumption that this is more of a personal/desktop/workstation type role. With that in mind, is there any compelling reason that you must upgrade to the latest greatest kernel as opposed to sticking with a previous kernel that has worked along with your "webcam" driver that worked as well?

    I am under the assumption that there are a lot of users that upgrade/acquire the latest greatest software and that in and of itself is not a bad thing but not always the smart thing. I'm referring to a "if it ain't broke, don't fix it" line of thinking.

    Can you or someone else inform me what the other part of this issue is I seem to completely miss?

    --
    BSD is designed. Linux is grown. C++ libs
    1. Re:Serious question: by Pandora's+Vox · · Score: 2, Insightful

      i have the same webcam issue. i need the latest kernel to support other bits of hardware, most importantly my BIOS's ACPI implementation. so the webcam is a no-go.

      -Leigh

  50. Re:kernel modules are not applications by 0racle · · Score: 2, Insightful

    What you're referring to is a stable ABI, not API. A stable, locked-down binary interface.
    Yes your right, my mistake.

    strong bias toward requiring people and organizations to release their software in source form
    And this is the childishness of Linux. My Linux system has a nvidia tnt2 card because thats what I had around when I put the system together. Now I have 2 choices of drivers, nvidias official one, or the barely works nv in X. Now if I felt like being a childish zealot, the nv driver would be a no brainer, however I like to use what works best, and thats the nvidia binary driver. Anywhere else, this is fine, but not with Linux because Linus and others have decided that I shouldn't use the best choice for my card, I should either use an inferior solution (nv), or bought another card, also an inferior solution (spent money I didn't have on an open card that doesn't exist). They seem to go out of there way to break every binary driver they can with every release without even considering that the open source alternatives range from almost alright to compleatly useless. Linux can be a little hobby or an actual, usefull OS product and at the moment the kernel dev's have gone with acting like children and developing Linux like a little hobby.

    --
    "I use a Mac because I'm just better than you are."
  51. This is a problem with glibc by branchingfactor · · Score: 3, Informative

    The compatibility problem is due to glibc. glibc is the software developer's worst compatibility nightmare. Code compiled under one version won't work under another version, regardless of whether you use dynamic or static linking. This problem is so severe that even different minor versions of glibc don't work together. They are continually changing their symbol names. It's gotten so bad that we write our own versions of c libary calls so we can have some minimal level of compatibility. By way of contrast, most proprietary unix operating systems (such as Solaris or Tru64) make a huge effort to ensure compatibility. Code I've compiled ten years ago under SunOS or OSF still runs on the latest versions of those operating systems.

  52. Re:Why upgrade... by Allen+Zadr · · Score: 2, Insightful
    I'm fully aware that 2.4 to 2.6 _was_ a major update. However, 2.6.8 to 2.6.9 should not have been. I recently had to make this switch. It went pretty flawlessly, but it did require driver rebuilds...

    Under Fedora (on the other hand), the NTFS driver (fully open, and PART OF the kernel) is not a default-included module (Fedora is not alone in this distinction) - so the module must be rebuilt (or wait for a new RPM, and download that). It's not the fault of 'Linux', per se, but the kernel developers could elliviate this problem by better structure versioning within the drivers - let the driver itself determine if the kernel is close enough.

    On my RHEL 3.0/Oracle 9i server, you are certainly right - RedHat does a great job back-porting all 'patches' into the same build-number code base as the original release. This server was also purchased with RedHat in mind, and I had the freedom at the time to make sure that everything would be fully supported by the default 2.4 RedHat Enterprise kernel.

    Finally, as a working manager - I'm happy when users can answer their own questions. On the other hand, I get a lot of technical respect from those who work with-me, and the requisite questions that go with that. It's too bad you don't have managers deserving of respect where you work.
    In IT it's part of my job to know what is available, and how it works. I take that part of my job seriously.

    --
    Kinetic stupidity has a new brand leader: Allen Zadr.
  53. Groklaw comes through in the clutch by compwiz · · Score: 4, Informative

    Groklaw clears this mess up. Turns out someone doesn't understand the word "fork."