Configuring the 2.6 Linux Kernel
An anonymous reader writes "This article is the first in a series by William von Hagen on using the new Linux 2.6 kernel, with a special emphasis on the primary issues in migrating existing drivers, applications, and embedded Linux deployments to a Linux distribution based on the 2.6 kernel. Bill is the author of Linux Filesystems, Hacking the TiVo, SGML for Dummies, Installing Red Hat Linux 7, and is the coauthor of The Definitive Guide to GCC (with Kurt Wall) and The Mac OS X Power Users Guide (with Brian Profitt)." This looks to be a good series for anyone planning to migrate to Linux 2.6, and having done just that myself, I'll attest to wanting more documentation along the way.
Mandrake 10 will be the first major distro use Kernel 2.6. Download the beta here.
Easy to install, just download the ISOs, burn to disk, reboot and the installer will appear.
Make sure to REPORT ALL BUGS, unless you want to see the LG incident again.
Firstly, s/summerize/summarize/, and secondly, the 'funky X configuration interfaces' you talk about are nothing more than GUI applications which have nothing to do with the kernel.
This recent trend in GUIfication of Linux is troubling, and your post illustrates exactly why. It's the same 'logic' that allowed MS to call Windows an 'Operating System' before it really was. It's the same logic that lusers use when they say that they 'can't get into the Microsoft' when they really mean there's an application problem.
Computers are NOT monolithic, they are NOT black boxes. They are boxes of legos, where you can build what you want, when you want it, and leave out the crap. You have control.
Unless you cede responsibility and control to someone else.
I want to delete my account but Slashdot doesn't allow it.
> make menuconfig
;)
I have never compiled my kernel before, and today I jsut compiled the 2.4 version, installed and later compiled 2.6.1 and installed... all without any problems.
Enough rant
I just like the config file method. Does this mean that I can keep my config file (for compiling the kernel) when I upgrade to the next stable? (keeping in mind that I have it customized)
I found this sticky at linuxquestions.org's forums to be most helpful in doing an easy and straightforward 2.6 compile on a slackware system. LinuxQuestions.org
Whats with the default config for the kernel, it's not blank, it's a specific setup that looks like it's for a P4 with a specific network card and chipset, shouldnt the kernel config be bare? this is referring to source downloaded directly from kernel.org,
Is the 2.6 kernel "Usable" yet? By this I mean getting obscure hardware to work such as my USB Midi Interface, and what about proprietary drivers such as Nvidia's, will existing code compiled for 2.4 kernel work? or will you have to recompile stuff (IPTables for example). Im running a gentoo box. I've been toying with updating the kernel to 2.6 and I've been hearing that there are a lot of radical changes to the kernel, the performance enhancements are very exciting to say the least. But what kinds of headaches am I going to have with a real world (used as a desktop as well as a server) system?
Electronic Music Made Using Linux http://soundcloud.com/polyp
I've considered setting up a wiki for the Kernel to give people a place to file what they've learned about it and share with the general public. Anyone think this would help anyone?
I've only recently started using Linux on a day-by-day basis, and after installing Debian unstable I switched directly to 2.6, without ever compiling a 2.4 kernel. That worked without a hitch, so now I'm wondering if the difference is so big. I still have an old Pentium I around the house, and I'm thinking of making this one a firewall/IDS... and so far I'm not sure if 2.6 was a little overkill for that one...
-- Power corrupts, but PowerPoint corrupts absolutely.
As far as I can tell, there is no way to use a KVM with kernel 2.6 and still have mouse wheel support. It works until you switch away and back to Linux, at which point the mouse goes completely nuts and cannot be revived. Back in 2.4, there were two hacks to revive the mouse in this situation (switch VCs, or set the mouse protocol in X to "AUTO") but neither of these work in 2.6. Windows, needless to say, has no problems. You can supposedly pass a psmouse.noext parameter to the kernel at boot time to fix the craziness, but a) this would remove mouse wheel support, and b) I never got it work anyway. If you know a workaround, please post!
Protect your browser with the Force Safe Search add-on
If more people put up articles like this to make it easier to use the popular open source software products it'd speed up rate of adoption a lot. If there was one on writing kernel modules ... ;-)
The problem with building your own kernel is that you will always make it as slim as possible. Then each time you buy a new piece of hardware (USB-mouse, SATA hd, etc) you'll need to build it again (and you've thrown away the original .config of course :). Is there a configure everything (besides what's been specified as built-in) as modules?
This is just a very loosly disguised advert for TimeSys Linux
Nothing any monkey cant work out in about five minutes (and if they cant they should not be cross compiling for embedded devices)
Since most people dont RTFA this isnt a problem, if you are one of the many... dont bother - its S**T
Yes. I'm using it. Its in 2.6 and the latest 2.4..
I think this will turn out to be a great series of white papers helping people get to grips with the process of configuring and compiling their own kernels, but I have to say that I think there would be faster progress on new kernels if the was some central repository of precompiled binary packages for the major distros throughout the development cycle.
The truth of the matter is that now linux is gaining wider acceptance, the community is filling up with more and more noobs and we should be doing more to help them understand the "new" (to them) technology. We also need to remember that not everyone who wants to use the software needs to be some sort of guru.This article is a great start to moving more people to the new code quicker, but regular up to date debs/rpms for all the current distributions will push that long even faster. I know someone will probably post saying "but there are packed versions for xxxx at somewhere.org", but they are often difficult to find for the noobs who just don't know where to look.
The 2.6 kernel is noticeably faster on my dual Athlon 2100+mp, at the user interface; X is faster than I've ever seen it before; the realtime scheduling is awesome.
In short, as soon as you can reasonably do so, I recommend you migrate to the 2.6.x kernel.
Thinking outside my Head
We all know that China will bury the United States within ten years. It's a fact of life. Either get used to it or stop buying their shoes. And if using Microsoft is patriotic, I guess there just isn't any hope for the whole goddamned United States of Amerika.
Seems like just in time, hopfuly some future articles will give some insight into how to get ISAPNP sounds cards to work. For some reason my ISAPNP OPL3SA2 cards can not be found when i either compile support into the kernel or into loadable modules...
seems like a few other people have this problem. Does anyone know the solution? Will i have to write the addresses of all the ports manualy and switch off ISAPNP for OPL3SA2?
Giving IE users a taste of their own medicine since 2005 - http://pods.-is-a-geek.net/
As opposed to, say, Microsoft or Oracle providing the software? And you don't think that the Chinese (or Indians, or Russians, or whatever) have the ability to write software themselves, that programming is somehow a uniquely American talent? If you get your head out of whatever other anatomical place it's parked in, you'd see how silly that is.
One of the advantages of Windows never mentioned in the article is the ability of Microsoft to remotely deactivate Windows XP in the case of a national emergency.
And you wonder why the rest of the world is moving away from it. Whether it's true or not, just making statements like this hurts the U.S. software industry more than anything that Stallman can say.
A known proponent of socialism, the Chinese government and RMS are natural allies.
Well golly, Bubba, it seems that the Bush administration has been getting pretty cozy with the Chinese government, too. If anyone's looking to sell out Taiwan, there's where you want to direct your vitriol. Are you aware that the President's brother, Neil Bush, is getting rich lobbying for China? No, I didn't think so...
Oops... I think I got baited!
Yeah, it's perfectly clear now. The FSF is a secret society filled with mutant commies!
Send in the clones!
The Computer is your friend!
The foremost problem I had in migration was that SCSI emulation with ide-scsi is no longer used for CD burning. I expect many people making the upgrade will run into a problem with that.
You can use the standard ATAPI ide-cdrom driver now to burn your CDs, but the userspace programs haven't caught up to this in all distros, especially the GUI ones. cdrdao just doesn't work last I checked, and while cdrecord works alright in the newer versions, many GUI frontend burners simply use cdrdao too much to be useful.
Other problems I had were that lm_sensors changed a bit and I didn't find it important enough to upgrade to newer userspace stuff, but anyone who's relying on them for anything will likely want to know that it's changed and upgrades to userspace are necessary. The only other issue, which was fixed by a quick Googling was that the module system is changed and module-init-tools is now necessary for loading and unloading kernel modules.
-N
I've nothing to say here...
I didn't know about xconfig before! I really have to spruce up my install. I'm still using kernel 2.6.0 and I should probably up it to 2.6.2. My problem is I use gentoo and I have to configure the kernel manually. I know HOW to do it as in what make commands to issue in order to get a binary kernel out of the thing. And how to put the kernel in /boot and point my lilo at it. What I'm not always sure on is exactly which configure options I want on and off. The important ones are obvious. Yes I have an athlon. Yes I need my nfornce network card, emu10k1, silicon image sata, pre-emptible kernel etc. etc. But a lot of them I just have no clue. Some options have useful help messages like "if you don't know, just say Y (or N) it wont slow you down". But there are still a zillion modules and options in there that I have no clue if I should use Y M or N.
We should make a repository of hardware configurations and which options should be turned on depending how you will use it. People should just say hey, I got this machine here with this hardware. I'm using it as a web server, and this is my kernel config. If enough people put there configs in, then people like me could find others with similar or identically matching hardware and use those configs. I'm sure it would also bring to light better configs for most people. I'm sure there's some guy out there not selecting a certain option who should be. And if he posts his config online some geek will be sure to point it out to him.
The GeekNights podcast is going strong. Listen!
Well, you can still use the ide-scsi emulation in 2.6, although it's not optimal. Recently there have been some fixes to ide-scsi in 2.6, that have made it usable again.
I'm using kernel 2.6.x and gentoo 1.4, and I'm fairly new to linux. All my h/w (nvidia, sblive, adaptec-compat scsi, usb mouse + mp3 player) works very well.
/proc/meminfo has changed (the first few summary lines have been removed) -- fixes for this don't seem to exist yet.
It wasn't as smooth an upgrade as I'd've liked, but, like I said, I'm fairly new to all this.
When I first upgraded, I did get a lot of errors/warnings on boot, but I have since fixed them all.
Ensuring you have the latest versions of hotplug and module-init-tools will help your migration to 2.6, as there are changes to h/w detection and module loading.
Take care when doing make oldconfig from an earlier gentoo kernel - gentoo kernels have had various performance patched in them for some time, but -- if I recall -- these settings didn't all magically migrate across, as the gentoo kernel build flags and the official kernel build flags have differing names for these features between 2.4 and 2.6. Just remember to check all your options with make menuconfig or similar. Some other build flags have changed names too, including stuff for usb devices and (IIRC) framebuffers -- this will probably only catch you out if you're migrating settings from an older kernel.
After building and installing my 2.6 kernel, I also installed the latest nvidia package from nvidia's website, and alsa-lib and alsa-utils (both 1.0.2, from portage)
Also, there are changes to how some system stats/info is handled/reported - ensure you have an up-to-date version of procps, or top might give some cranky info... some tools that monitor memory levels (gkrellm, various gdesklets) will stop working because the output of
Other than the meminfo issue, kernel 2.6 hasn't broken anything (that I've noticed) on my gentoo system, and it appears to work very well.
(Oh, kernel 2.6 did cause one of my drives to give warnings about unexpected DMAs every few mins, but that totally fixed itself once I stopped overclocking the CPU. The drive was running slower with a mis-firing DMA, but other than the warnings, no problems occured (YMMV). Something in 2.6 must be more timing sensitive or less tolerant of overcranked h/w speeds. NBD: my system is a few years old, the extra ~20% speed increase cannot is insignificant when compared to speeds of a modern CPU - it seemed a lot at the time!)
If you are upgrading an NForce-based machine to 2.6.x, save yourself some headaches and add "noapic nolapic" to the Kernel append string. I experienced repeatable hard lockups when doing disk intensive I/O until adding those parameters.
Also, NVIDIA's nforce package is no longer necessary. The experimental forcedeth driver in 2.6.2 works quite well in my experience, and apparently an Intel sound driver works for the NForce onboard sound.
See my latest journal entry for my account of migrating MDK 9.1 to a vanilla 2.6.1 kernel.