292 - 2.6 kernel fun

From a previous post you may realise that revision is getting boring. Even if you only have three days maximum per exam, it can still get very tedious. Perhaps it is **because** only three days are available: the mountain of work just doesn’t seem surmountable in the given time. What better way, then, to relieve the tedium than to compile a brand shiny new kernel? I know, I can’t think of a better thing to do. Sun shining outside? Birds fluttering? Pretty girls sunbathing? My my no, how can such things be called alluring? I think it is just because I can pretend to be working if I am still inside the house… Off to kernel.org I browsed and downloaded a fresh-off-the-press 2.6.6 kernel tree. The first thing I noticed is that **make xconfig** is much easier to use than the old motif based GUI in 2.4. It is still easy to screw up though, so I still wouldn’t recommend downloading this for your law student flatmate and leaving them to it. It took me a few compiles and reboots to get working, herewith my advice:
1. Check the make of your network card and make sure you compile the right driver. I have a Broadcom inbuilt controller which has a different module name used than for my Gentoo delivered 2.4 kernel. This caused a few hiccups. My network controller is also listed as EXPERIMENTAL which caused me to skip over it the first couple of times — my card was working fine under 2.4, so the driver couldn’t be experimental, could it? I also had to alias the card to the driver myself in the end, but it works now.
1. If you want sound, add yourself to the **audio** group. The sound card is allowed write access by this group and root only, so it’s essential to add yourself to it. Also make sure you choose the right sound card driver in the kernel setup.
1. Don’t compile everything into the kernel; some things just seem to stop the kernel booting if you put them into the kernel, my via IDE chipset driver seems to prevent the kernel from decompressing for some reason which is rather worrying. Works fine from a module though.
1. If your hard disk gives errors like **hda: interrupt failed** and **hda: IRQ probe failed**, turn off ACPI support in the kernel and recompile. Another of those things that no-one seems quite sure why it works, but it does.
That’s how I got most of my system working. I think that all serious computer scientists should be able to compile their own kernel, if only so that they realise that it is not a black art and fiddling around with the very core of your system isn’t the preserve of the few. Actually **coding** it, of course, is hardcore indeed. It is just that chopping and changing thing with your computer is one of the key factors in understanding that it is not complete black magic driving it. There is real code, written by real people keeping it up and running. I’ll use the new kernel for a few days and tell you if it feels faster. There are several new things that are supposed to improve desktop response time, most notably the new task scheduler. I shall wait and see for now; my computer hasn’t been up long enough for an appraisal yet.