Anyone who's been following Linux kernel development for the past several months has heard about one exciting feature after another being merged into the still un-released 2.6 kernel. New features that noticeably affect user experience include Robert Love's [interview] preemptible kernel work [story], Ingo Molnar's [interview] O(1) Scheduler [story], Rik Van Riel's [interview] reverse mapping VM [story], Nick Piggins' [interview] Anticipatory I/O scheduler [story], and much, much more...
Having some spare time a few nights ago, I decided to give the latest kernel, 2.6.0-test4, a trial run on my aging 550Mhz PIII desktop computer, and the result was nothing short of spectacular. As the final 2.6.0 release approaches, it is important that an increasing number of users (aka testers) give this kernel a try, especially as currently it's still a sexy task for developers to track down kernel bugs and stabalize their work. Once work starts on the 2.7 development tree, inevitably much talent will again be focusing on new features.
The purpose of this document is to provide some helpful tips to readers that currently compile their own 2.4 kernels, but haven't yet made the leap to 2.6. This is still a development kernel, so you may run into problems, but overall stability and performance is quite impressive and I can't recommend enough that you try it today.
Target Audience:
This article is targeted towards Linux users that are already comfortable with compiling their own 2.4 kernels. If you've never compiled a kernel before, I suggest that you start here:
Beyond that, it's also highly recommended that anyone new to the 2.6 kernel review Dave Jones' post-halloween document (aka "2.5 - what to expect").
Step 0: Make a backup of important data.
Before we get started, if you're going to be running a development kernel be sure that you have a current backup of any important data. While I've not run into any problems while running 2.6.0-test4, there are still bugs...
Step 1: Obtain the current 2.6 kernel.
All official versions of the Linux kernel source code can be found at http://kernel.org/. It is highly encouraged that you find the fastest local mirror to spread out the load among willing kernel source hosts. Find the kernel.org mirror list here: http://kernel.org/mirrors/.
At the time of this writing, the current version of the 2.6 kernel is 2.6.0-test4, a development version. The next release will be -test5, then -test6, and so on, until Linux creator Linus Torvalds decides that it's time to release 2.6.0, the first official release of the much-anticipated stable 2.6 tree.
Having downloaded the source, it's also a very good idea to download the GnuPG signature and use it to verify the authenticity and validity of your new kernel source. For more information, go to: http://www.kernel.org/signature.html.
Step 2: Review the provided documentation.
At absolute minimum, you should at least review the top-level README, and the Changes file inside the Documentation directory, both distributed with the Linux kernel source code.
The top-level README refers to itself as being for the 2.5 development kernel, as 2.6.0-test is still part of the development phase. (2.6.0, without a -test extension, will be the first 2.6 kernel) You'll find lots of good tips in this document regarding how to successfully compile a Linux kernel. The document begins:
"These are the release notes for Linux version 2.5. Read them carefully, as they tell you what this is all about, explain how to install the kernel, and what to do if something goes wrong."
The Documentation/Changes file lists the new requirements of the 2.5 development kernel, providing a list of software that must be upgraded to work properly with the new kernel. It begins:
"This document is designed to provide a list of the minimum levels of software necessary to run the 2.5 kernels, as well as provide brief instructions regarding any other 'Gotchas' users may encounter when trying life on the Bleeding Edge."
Step 3: Upgrade your system per the Changes file.
There are a number of utilities that you will have to upgrade for them to work properly with your new 2.6 kernel. Some of the utilities listed in 'Changes' you won't have to worry about, as for example they may be specific to certain filesystems. However, you will at least need to meet the minimum version requirements for the following (see 'Documentation/Changes' for the latest requirements -- they may have changed!):
Name: Minimum version: How to find version:
Gnu C Compiler 2.95.3 gcc --version
Gnu Make 3.78 make --version
binutils 2.12 ld -v
util-linux 2.10o fdformat --version
module-init-tools 0.9.9 depmod -V
procps 2.0.9 ps --version
[procps 2.x] [procps 3.x]
The following utilities are filesystem specific. If you're running ext2 or ext3, be sure to update your e2fsprogs, if you're running jfs, be sure to update jfsutils, etc...
Name: Minimum version: How to find version:
e2fsprogs 1.29 tune2fs
jfsutils 1.0.14 fsck.jfs -V
reiserfsprogs 3.6.3 reiserfsck -V 2>&1 | grep reiserfsprogs
xfsprogs 2.1.0 xfs_db -V
nfs-utils 1.0.5 showmount --version
And a handful of other utilities that you'll want to update if you use them:
Name: Minimum version: How to find version:
pcmcia-cs 3.1.21 cardmgr -V
quota-tools 3.09 quota -V
PPP 2.4.0 ppd --version
isdn4k-utils 3.1pre1 isdnctrl 2>&1 | grep version
oprofile 0.5.3 oprofiled --version
If you're going to be running ALSA for the first time, also be sure to visit http://www.alsa-project.org/ to grab the latest alsa-lib and alsa-utils.
Step 4: Configure your new kernel.
One of the first changes you'll notice is the new build system [story]. The old Tk/Tcl 'xconfig' build method no longer exists, replaced by a new QT based 'xconfig'. Non-QT fans will be happy to find that a GTK based 'gconfig' is also available for their use.
2.6 build methods include:
This appears to be identical to 'config' in the 2.4 kernel. As the most simplistic configuration method, it simply asks you about each configuration option, one at a time... Requires the 'bash' shell.
This appears to be identical to 'menuconfig' in the 2.4 kernel. A simple curses based configuration method.
This new default graphical configuration system uses the QT libraries. I found it to be quite functional and easy to use.
This option is a clone of the new xconfig, however using the GTK libraries instead of the QT libraries. Unfortunately, in my brief testing I found it to be somewhat buggy. While running, it spews out the same error over and over, and crashed rather quickly. Here's a log to show you what I'm talking about.
This build option will prove extremely useful to you as you upgrade to newer and newer 2.6 kernels. At first glance it looks identical to the plain 'make config', however 'oldconfig' reads your current .config settings and automatically answers for you based on these settings, only prompting you for new configuration choices. To use, simply copy in your old .config file, then type 'make oldconfig'.
When configuring your 2.6 kernel for the first time, keep in mind the following tips from the top-level README file that came with your Linux source:
ALSA:
For many people upgrading from 2.4 to 2.6, this will be your first time using the Advanced Linux Sound Architecture (ALSA) which has replaced OSS. Though it may be tempting to simply enable the deprecated OSS and go about your life as normal, it's probably worth your time to get ALSA working. Thanks to ALSA's OSS API Emulation, it's really not that hard. When configuring your kernel, be sure to enable the OSS emulation options (SND_OSSEMUL, SND_MIXER_OSS and SND_PCM_OSS) Also be sure to enable the appropriate sound driver (in PCI devices) - I compiled mine directly into the kernel. Finally, be sure to download and install the latest alsa-lib and alsa-utils.
Step 5: Build your new kernel.
Actually building the kernel is one step easier than in 2.4, as you no longer have to type 'make dep'. To build a new kernel, type 'make bzImage'. If you've chosen to compile any modules, you'll also need to 'make modules' and 'make modules_install'. Or, you can string it all together like 'make bzImage && make modules && make modules_install'.
When the build starts, you'll notice that the default build process is much quieter than it was in 2.4, providing simple summaries as opposed to all the compiler output.
Step 6: Install your new kernel.
Now that you've built your kernel, you need to copy it into place. For example, on x86 you'll find it in 'arch/i386/boot'. You'll want to copy this file and your new System.map into /boot. For example:
# pwd
/usr/src/linux-2.6.0-test4
# mv arch/i386/boot/bzImage /boot/bzImage-2.6.0-test4
# mv System.map /boot/System.map-2.6.0-test4
# cd /boot
# rm System.map
# ln -s System.map-2.6.0-test4 System.map
I noticed that my new 2.6 kernel is bigger than the last 2.4 kernel I compiled with the same version of gcc, however it's possible that I have more options enabled:
-rw-r--r-- 1 root root 1094390 Aug 12 20:30 bzImage-2.4.21-ck3 -rw-r--r-- 1 root root 1639129 Aug 27 22:06 bzImage-2.6.0-test4
Having copied your new kernel into place, now you need to configure your boot loader. You're probably using grub [manual] or lilo [howto], refer to the appropriate documentation if you're unsure how your boot loader works.
Step 7: It's still not too late...
I'm not trying to scare you, but up to this point you've not done anything that could damage data on your hard drive. However, the next step involves booting the new kernel, so just to be safe one last time I'm going to recommend that you be sure you have a current backup of any important data that lives on your hard drive.
Step 8: Try your new kernel.
And now, the moment you've been waiting for.. It's time to reboot your computer, and test your newly compiled 2.6 kernel. If you've done everything correctly, you'll watch some friendly boot messages, and then be prompted to login. (If your booting to initstate=3, you'll notice the new kernel immediately...)
If you installed ALSA for the first time, you can verify that your sound driver has properly loaded by typing 'cat /proc/asound/cards'. For example:
$ cat /proc/asound/cards
0 [Live ]: EMU10K1 - Sound Blaster Live!
Sound Blaster Live! (rev.5) at 0x18e0, irq 11If you see something like that, but sound still isn't working, launch 'alsamixer' and be sure your device is turned up. I was confused at first in that turning up the 'Master' control wasn't enough, I also had to turn up 'PCM' (/dev/dsp) for sound to start working.
Once you've tried out your new 2.6 kernel, I'd love if you'd post a comment here with your reflections. I'm also open to suggestions on how to make the above directions more useful.
If you run into problems with your new kernel, once again refer to the top-level 'README' that came with your kernel source which has a useful section titled "IF SOMETHING GOES WRONG". Additionally, refer to the top-level 'REPORTING-BUGS' file if the need arises. Prior to posting problems to the high-traffic Linux kernel mailing list, be sure to search one or more of the many online lkml archives to see if someone else has already reported the problem, and better yet if someone else has already posted a fix. Last but not least, you may also try asking for help in the KernelTrap 2.6 kernel forum.
Additional tips/FAQs:
Thanks to a significant amount of reader feedback in the form of comments below and personal emails, I'm going to add a few random but hopeful useful tips to the end of this document. If you have additional tips, please feel free to send me an email. (If you've already sent a comment and I've note yet replied, please be patient...)
I'm already running 2.6.x, how can I easily upgrade to the next release?
The process is described here.Does GCC 3.x work for compiling the Linux kernel?
Personally, I compiled the 2.6.0-test4 kernel that I'm currently using with gcc 3.2, and I'm not having any problems. The general consensus appears to be that this will work in most cases, but if you run into any compilation problems then try again with the preferred gcc 2.95.3.Where can I learn more about ALSA?
There's a wealth of information on the Advanced Linux Sound Architecture home page: http://www.alsa-project.org/Does the NVidia driver work with 2.6?
It has been pointed out that a working NVidia driver with 2.6 can be found at http://www.minion.de/.How can I install and use the reiser4 filesystem?
The makers of reiser4, namesys, have a brief 'getting started' document.Are there any special tips for RedHat 9 users?
You're in luck. I've been pointed to a couple of documents that walk you through the specific issues you may run into when upgrading RedHat 9 to the 2.6 kernel, here and here.Are there any special tips for Debian users?
Several readers have pointed towards this article by linmagau.org, though it refers to compiling a 2.4 kernel. At this time, there's a debian package for 2.6.0-test2 here. adds, "A Debian Woody system will have module problems. But people running Debian Sid (and Sarge) can just 'apt-get install module-init-tools'. I was pleased that Debian figures out at boot time whether to use the new module-init-tools or the older modutils, though perhaps all distros do this.".Why didn't you warn me about the problem with <xx>?
Actually, I didn't run into any problems or gotcha's when I upgraded to 2.6.0-test4. But as I learn of more issues (and solutions), I'll post them here.
Article translations:
Redhat: ext3 problem and No module aic7xxx found for kernel
Redhat 9 with 2.6 Kernel Upgrade from Source
Mike Chirico
Last Updated: Mon Feb 23 14:47:55 EST 2004
The latest version of this document can be found at:
http://prdownloads.sourceforge.net/souptonuts/README_26.txt?download
For configs ref:
http://sourceforge.net/project/showfiles.php?group_id=79320&package_id=1...
STEP 1:
Download the latest version of the kernel and any patches. This documentation
is done with linux-2.6.3, but look for later versions.
http://www.kernel.org/pub/linux/kernel/v2.6/
Also take a look at http://www.codemonkey.org.uk/post-halloween-2.5.txt
This has some useful hints on some of the changes needed.
STEP 2:
Download the latest version of module-init-tools
[module-init-tools-3.0-pre10.tar.gz] and modutils-2.4.21-2x.src.rpm
http://www.kernel.org/pub/linux/kernel/people/rusty/modules/
STEP 3:
Install module-init-tools. This will replace depmod [/sbin/depmod] and
other tools.
tar -zxvf module-init-tools-3.0-pre10.tar.gz cd
module-init-tools-3.0-pre10 ./configure --prefix=/sbin
make
make install
./generate-modprobe.conf /etc/modprobe.conf
STEP 4:
Install modutils-2.4.21-23.src.rpm. You'll may get warnings about user
rusty and group rusty not existing. Also, yes, you'll have to force the
install. If you don't do these steps for both Redhat 9 and Redhat 8, you'll
have problems with the make modules_install.
rpm -i modutils-2.4.21-23.src.rpm
rpmbuild -bb /usr/src/redhat/SPECS/modutils.spec
rpm -Fi /usr/src/redhat/RPMS/i386/modutils-2.4.21-23.i386.rpm
STEP 5:
Install and configure the kernel. Do NOT use the /usr/src/linux area!
Reference the README. I put my files in /home/src/kernel/
gunzip linux-2.6.3.tar.gz tar -xvf linux-2.6.3.tar cd linux-2.6.3
If you have patches install these now:
bzip2 -dc ../patch-2.6.xx.bz2 | patch -p1
STEP 6:
Copy the appropiate /usr/src/linux-2.4/configs [kernel-2.4.20-i686.config,
kernel-2.4.20-i686-smp.config] to .config in /home/src/kernel/linux-2.6.3
cp /usr/src/linux-2.4/configs/kernel-2.4.20-i686.config
/home/src/kernel/linux-2.6.3/.config
If you don't have the source configs, you can download them from here:
https://sourceforge.net/project/showfiles.php?group_id=79320&package_id=...
I've also included a file config2.6-chirico which was a 2.6 version for some
of my systems. This isn't a bad reference if you run into trouble.
STEP 7:
Assuming you copied the appropriate kernel-2.4 config to .config, run the
following which will run through necessary questions for the 2.6 kernel. Or,
you might want to use the config2.6-chirico...this has already been run
through make oldconfig on my system, and I've answered the necessary questions
for a general system.
make oldconfig
STEP 8:
This is very important. Make sure you're .config has the following in it
CONFIG_EXT3_FS=y You'll run into the following error if you leave this =m
instead of =y:
pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed
This is because Redhat 9.0 and 8.0 user the ext3 filesystem for /boot ...
STEP 9:
Edit the Makefile and add changes to the Extraversion is needed. Patches will
update these values as well.
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 3
EXTRAVERSION = -skim-ch6
STEP 10:
make bzImage
STEP 11:
make modules
STEP 12:
make modules_install
STEP 13:
make install
If you come across errors here, what version of "depmod" is being picked
up in your path?
Also, if you get a module not found, say the following:
No module aic7xxx found for kernel 2.6.x
Then, in /lib/modules/2.6.x/kernel/drivers/scsi/aic7xxx/
cp aic7xxx.ko aic7xxx.o
insmod should look for aic7xxx.ko ;but, it looks for aic7xxx.o
If you still have touble, make the following change in the .config
CONFIG_BLK_DEV_SD=y
and go back to STEP 10.
You also may want to ref
kernel-2.6.3-i686-smp-chirico-aic7xxx.config
STEP 14:
mkdir /sys
STEP 15:
/etc/rc.sysinit needs to be modified. Look for the following line
action $"Mounting proc filesystem: " mount -n -t proc /proc /proc
and after this line enter the following:
action $"Mounting sysfs filesystem: " mount -n -t sysfs /sys /sys
Here's my /etc/rc.sysinit for reference:
http://prdownloads.sourceforge.net/souptonuts/rc.sysinit.txt?download
Be very careful at this step. Backup the /etc/rc.sysinit file. I didn't
need any USB support, but your configuation may need it.
Thomer [http://thomer.com/linux/migrate-to-2.6.html ] also added changes
to /etc/fstab. I did NOT have to do this. No harm in addding; you'll just
get errors when booting that it can't be mounted twice.
STEP 16:
Check the following:
a. The new image file should be installed on boot and there should be sym
link to it. My latest kernel is 2.6.3-skim-ch6, and I got the "-skim-ch6"
from the values I put in the Makefile, so I see the following:
/boot
vmlinuz -> vmlinuz-2.6.3-skim-ch6
System.map -> System.map-2.6.3-skim-ch6
/boot/grub/grub.conf Should have been automatically updated from make
install and look something like the the following:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,2)
# kernel /vmlinuz-version ro root=/dev/hda6
# initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=10
splashimage=(hd0,2)/grub/splash.xpm.gz
title Red Hat Linux (2.6.3-skim-ch6)
root (hd0,2)
kernel /vmlinuz-2.6.3-skim-ch6 ro root=LABEL=/
initrd /initrd-2.6.3-skim-ch6.img
b. The directory /sys exists
c. You added the mount command for sys
d. CONFIG_EXT3_FS=y was used in the .config
REFERENCES:
http://www.codemonkey.org.uk/post-halloween-2.5.txt
http://kerneltrap.org/node/view/799 http://thomer.com/linux/migrate-to-2.6.html
http://www.kernel.org/
http://bugzilla.kernel.org/
http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&group=linux....
http://prdownloads.sourceforge.net/souptonuts/README_26.txt?download
http://prdownloads.sourceforge.net/souptonuts/rc.sysinit.txt?download
http://prdownloads.sourceforge.net/souptonuts/configs-0.3.tar.gz?download
https://sourceforge.net/forum/forum.php?forum_id=353715
http://www.redhat.com/software/rhel/kernel26/
DevFS OBSOLETED by UDev
DevFS OBSOLETED by UDev
help with fedora project
I have Fedora Core 1 and I want to compile 2.6.5 and I cant do it properly because it wont do it. I cant save it to the usr/src directory because it wont let me. I really need some reponse.
Adapte RAID SCSI and Linux 2.6
since adaptec i2o support has been stopped at Linux 2.6, we tried to use a patch. Has been tested at production server for 2 weeks
http://smartcgi.com/docs/kernel26_adaptec.html
LVM hassles
This article was very helpful in getting 2.6.6 installed on my Fedora Core 1 box. I did run into several snags involving LVM, which I had to upgrade on the stock Fedora install before upgrading to 2.6.6, as well as installing device-mapper. I couldn't find any HOWTO for specifically upgrading Fedora to 2.6. I ended up having to hack rc.sysinit as well as generate a modprobe.conf file from modules.conf. I'm currently upgrading another box with LVM and hope to document and make available my trials this time around.
remember to mention "make install"
I just had a hard time getting my kernel to work because
I followed your instructions to the letter but you didn't
say to do a make install after the make modules_install.
I'd like to suggest adding make install as a step.
If you don't do the make install then the initrd file
doesn't get made or copied to /boot + added to grub.conf,
then the kernel does a kernel panic at boot time.
Mark
Console BLACK-OUT!!
Hey!!! help here!! my console is in a total blackout state before I`d update my kernel to 2.6.7 with this tuto and some others to help... When enter in the lilo menu its ok, but when this cross the lilo to console gets total blackscreen!! help here please!!! :(
Blackout...
bleh!! have fix this problem... (not really a problem...) just framebuffer disabled by mistake.. and VGA support and... riva support on..
kernel 2.6.x. error
Hi!
I tried to build kernel 2.6.6. in a SUSE 9 system (kernel 2.4.x) but I faced up some problems like these
rch/i386/kernel/traps.c: In function `die':
arch/i386/kernel/traps.c:331: warning: implicit declaration of function `CHK_REMOTE_DEBUG'
arch/i386/kernel/traps.c:331: error: parse error before ')' token
arch/i386/kernel/traps.c: In function `do_int3':
arch/i386/kernel/traps.c:436: error: parse error before "return"
arch/i386/kernel/traps.c: In function `do_overflow':
arch/i386/kernel/traps.c:437: error: parse error before "return"
arch/i386/kernel/traps.c: In function `do_bounds':
arch/i386/kernel/traps.c:438: error: parse error before "return"
arch/i386/kernel/traps.c: In function `do_coprocessor_segment_overrun':
arch/i386/kernel/traps.c:440: error: parse error before ')' token
arch/i386/kernel/traps.c: In function `do_invalid_TSS':
arch/i386/kernel/traps.c:441: error: parse error before ')' token
arch/i386/kernel/traps.c: In function `do_segment_not_present':
arch/i386/kernel/traps.c:442: error: parse error before ')' token
arch/i386/kernel/traps.c: In function `do_stack_segment':
arch/i386/kernel/traps.c:443: error: parse error before ')' token
arch/i386/kernel/traps.c: In function `do_general_protection':
arch/i386/kernel/traps.c:469: error: parse error before ')' token
arch/i386/kernel/traps.c: In function `do_debug':
arch/i386/kernel/traps.c:681: error: parse error before ')' token
make[1]: *** [arch/i386/kernel/traps.o] Error 1
make: *** [arch/i386/kernel] Error 2
I ve installed the minimum software requirements and I ve followed the procedure mentioned above by the book. Could you help me? Thanks a lot!!
Stavros
Think about other applications too...
I transitioned from 2.4 to 2.6 recently. There are things I like and things I don't (take the devfs/udev 'issue'). But there is one thing which might be an absolute showstopper for many. The kernel headers aren't compatible!!! Take the example of the cdrtools (yes cdrecord and consorts). If you want to compile them, be pretty sure to have a 2.4 kernel tree with headers installed. Since I have some magic in /etc/rc.sysinit to make sure that /usr/src/linux points to the running kernel, I even have to boot in 2.4 to compile the cdrtools (!!!)
No mixer elemns found!
I passed from 2.4.2x to 2.6.7, it's all right with the exception of soud. I installed udev also, but alsa doesn't work.
This is my /proc/asound:
0 [VirMIDI ]: VirMIDI - VirMIDI
Virtual MIDI Card 1
1 [AudioPCI ]: ENS1371 - Ensoniq AudioPCI
Ensoniq AudioPCI ENS1371 at 0xe400, irq 5
and this is my /dev:
crw-rw--w- 1 root audio 14, 14 2004-09-19 16:47 admmidi
lrwxrwxrwx 1 root root 11 2004-09-19 16:47 adsp1 -> sound/adsp1
lrwxrwxrwx 1 root root 12 2004-09-19 16:47 agpgart -> misc/agpgart
crw-rw--w- 1 root audio 14, 13 2004-09-19 16:47 amidi
crw------- 1 root root 10, 134 2004-09-19 16:47 apm_bios
lrwxrwxrwx 1 root root 12 2004-09-19 16:47 audio1 -> sound/audio1
crwx------ 1 root tty 5, 1 2004-09-19 15:42 console
lrwxrwxrwx 1 root root 11 2004-09-19 16:47 core -> /proc/kcore
crw-rw--w- 1 root audio 14, 9 2004-09-19 16:47 dmmidi
crw-rw--w- 1 root audio 14, 25 2004-09-19 16:47 dmmidi1
drwxr-xr-x 2 root root 0 2004-09-19 14:48 dri
lrwxrwxrwx 1 root root 10 2004-09-19 16:47 dsp1 -> sound/dsp1
drwxr-xr-x 2 root root 0 2004-09-19 16:47 fb
lrwxrwxrwx 1 root root 4 2004-09-19 16:47 fb0 -> fb/0
lrwxrwxrwx 1 root root 13 2004-09-19 16:47 fd -> /proc/self/fd
lrwxrwxrwx 1 root root 8 2004-09-19 16:47 fd0 -> floppy/0
brw-rw---- 1 root floppy 2, 4 2004-09-19 16:47 fd0d360
..cut...
brw-rw---- 1 root floppy 2, 112 2004-09-19 16:47 fd0u3840
drwxr-xr-x 2 root root 0 2004-09-19 16:47 floppy
crw-rw-rw- 1 root root 1, 7 2004-09-19 16:47 full
brw-rw---- 1 root disk 3, 0 2004-09-19 16:47 hda
brw-rw---- 1 root disk 3, 1 2004-09-19 16:47 hda1
brw-rw---- 1 root disk 3, 64 2004-09-19 16:47 hdb
brw-rw---- 1 root disk 3, 65 2004-09-19 16:47 hdb1
brw-rw---- 1 root disk 3, 66 2004-09-19 16:47 hdb2
brw-rw---- 1 root disk 3, 67 2004-09-19 16:47 hdb3
brw-rw---- 1 root disk 3, 68 2004-09-19 16:47 hdb4
brw-rw---- 1 root disk 22, 0 2004-09-19 16:47 hdc
brw-rw---- 1 root disk 22, 64 2004-09-19 16:47 hdd
drwxr-xr-x 2 root root 0 2004-09-19 16:47 i2c
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 i2c-0 -> i2c/0
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 i2c-1 -> i2c/1
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 i2c-2 -> i2c/2
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 i2c-3 -> i2c/3
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 i2c-4 -> i2c/4
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 i2c-5 -> i2c/5
prw------- 1 root root 0 2004-09-19 15:42 initctl
drwxr-xr-x 2 root root 0 2004-09-19 16:47 input
crw-r----- 1 root kmem 1, 2 2004-09-19 16:47 kmem
crw------- 1 root root 1, 11 2004-09-19 16:47 kmsg
srw-rw-rw- 1 root root 0 2004-09-19 14:47 log
brw-rw---- 1 root disk 7, 0 2004-09-19 16:47 loop0
crw-rw---- 1 root lp 6, 0 2004-09-19 16:47 lp0
crw-r----- 1 root kmem 1, 1 2004-09-19 16:47 mem
crw-rw--w- 1 root audio 14, 2 2004-09-19 16:47 midi
crw-rw--w- 1 root audio 14, 18 2004-09-19 16:47 midi1
drwxr-xr-x 2 root root 0 2004-09-19 16:47 misc
lrwxrwxrwx 1 root root 11 2004-09-19 16:47 mixer -> sound/mixer
lrwxrwxrwx 1 root root 12 2004-09-19 16:47 mixer1 -> sound/mixer1
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 mouse -> psaux
crw-rw-rw- 1 root root 1, 3 2004-09-19 16:47 null
crw-rw---- 1 root video 195, 0 2004-09-19 16:47 nvidia0
crw-rw---- 1 root video 195, 1 2004-09-19 16:47 nvidia1
crw-rw---- 1 root video 195, 255 2004-09-19 16:47 nvidiactl
crw-r----- 1 root kmem 1, 4 2004-09-19 16:47 port
crw-rw---- 1 root uucp 108, 0 2004-09-19 16:47 ppp
lrwxrwxrwx 1 root root 10 2004-09-19 16:47 psaux -> misc/psaux
crw-rw-rw- 1 root tty 5, 2 2004-09-19 16:11 ptmx
drwxr-xr-x 2 root root 0 2004-09-19 16:47 pts
crw------- 1 root root 226, 0 2004-09-19 16:47 radeon
crw-r--r-- 1 root root 1, 8 2004-09-19 16:47 random
crw-rw-r-- 1 root root 10, 135 2004-09-19 16:47 rtc
lrwxrwxrwx 1 root root 15 2004-09-19 16:47 sequencer -> sound/sequencerlrwxrwxrwx 1 root root 16 2004-09-19 16:47 sequencer2 -> sound/sequencer2
drwxr-xr-x 2 root root 0 2004-09-19 16:47 shm
drwxr-xr-x 2 root root 0 2004-09-19 16:47 snd
drwxr-xr-x 2 root root 0 2004-09-19 16:47 sound
lrwxrwxrwx 1 root root 15 2004-09-19 16:47 stderr -> /proc/self/fd/2
lrwxrwxrwx 1 root root 15 2004-09-19 16:47 stdin -> /proc/self/fd/0
lrwxrwxrwx 1 root root 15 2004-09-19 16:47 stdout -> /proc/self/fd/1
drwxr-xr-x 2 root root 0 2004-09-19 16:47 tts
crw-rw-rw- 1 root tty 5, 0 2004-09-19 15:39 tty
lrwxrwxrwx 1 root root 4 2004-09-19 16:47 tty0 -> vc/0
lrwxrwxrwx 1 root root 4 2004-09-19 16:47 tty1 -> vc/1
...cut..
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 ttyS7 -> tts/7
crw-r--r-- 1 root root 1, 9 2004-09-19 14:47 urandom
drwxr-xr-x 2 root root 0 2004-09-19 16:47 v4l
lrwxrwxrwx 1 root root 8 2004-09-19 16:47 vbi0 -> v4l/vbi0
drwxr-xr-x 2 root root 0 2004-09-19 16:47 vc
drwxr-xr-x 2 root root 0 2004-09-19 15:43 vcc
lrwxrwxrwx 1 root root 5 2004-09-19 16:47 vcs -> vcc/0
lrwxrwxrwx 1 root root 5 2004-09-19 14:48 vcs1 -> vcc/1
lrwxrwxrwx 1 root root 5 2004-09-19 14:48 vcs2 -> vcc/2
lrwxrwxrwx 1 root root 5 2004-09-19 14:48 vcs3 -> vcc/3
lrwxrwxrwx 1 root root 5 2004-09-19 14:48 vcs4 -> vcc/4
lrwxrwxrwx 1 root root 5 2004-09-19 14:48 vcs5 -> vcc/5
lrwxrwxrwx 1 root root 5 2004-09-19 14:48 vcs6 -> vcc/6
lrwxrwxrwx 1 root root 5 2004-09-19 15:43 vcs7 -> vcc/7
lrwxrwxrwx 1 root root 6 2004-09-19 16:47 vcsa -> vcc/a0
lrwxrwxrwx 1 root root 6 2004-09-19 14:48 vcsa1 -> vcc/a1
lrwxrwxrwx 1 root root 6 2004-09-19 14:48 vcsa2 -> vcc/a2
lrwxrwxrwx 1 root root 6 2004-09-19 14:48 vcsa3 -> vcc/a3
lrwxrwxrwx 1 root root 6 2004-09-19 14:48 vcsa4 -> vcc/a4
lrwxrwxrwx 1 root root 6 2004-09-19 14:48 vcsa5 -> vcc/a5
lrwxrwxrwx 1 root root 6 2004-09-19 14:48 vcsa6 -> vcc/a6
lrwxrwxrwx 1 root root 6 2004-09-19 15:43 vcsa7 -> vcc/a7
lrwxrwxrwx 1 root root 10 2004-09-19 16:47 video0 -> v4l/video0
crw-rw---- 1 root root 10, 165 2004-09-19 16:47 vmmon
crw-rw---- 1 root root 119, 0 2004-09-19 16:47 vmnet0
...cut...
crw-rw---- 1 root root 119, 9 2004-09-19 16:47 vmnet9
crw-rw-rw- 1 root root 1, 5 2004-09-19 16:47 zero
when I lounch alsamixer I obtain rhis message:
No mixer elemns found!
Even if I launch "alsamixer -D /dev/dsp1":
ALSA lib control.c:654:(snd_ctl_open_noupdate) Invalid CTL /dev/dsp1
alsamixer: function snd_ctl_open failed for /dev/dsp1: No such file or directory
Compiling hello program in kernel 2.6
hi,
I had writeen the code for simple hello world program.
It compiles and run successfullly.
But when i write command rmmod,then it gives msg.device busy.
I saw with lsmod command and my module used by permanent.
MY code is:
#include
#include
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk("Hello world\n");
return 0;
}
static void hello_exit(void)
{
printk("goodbye\n");
}
module_init(hello_init);
moduel_exit(hello_exit);
Can anyone help me for the same.
Thanking You.
jitendra.
one step about make install
I have had bad and long nights compling and installing kernel as my school project. But now I as a final step I use, make install command. It not only paste new created bzImage into /boot/ directory but also creates .image file in the same folder. It also updates grub.conf files to reflect the new complied kernel. Breeze. All I need to do then is restart. No hussle, no root device not found error!
And I can not understand why every single I guide I browse through for installing new kernel misses this step. any idea?
There is a known issue with t
There is a known issue with the 2.6 kernels and RPM (its actually a db3 issue I think). Fetch rpm-4.2.1 from rpm.org and your problems will be solved.
Fall back kernel
I am using Slackware 10.2 with 2.4 kernel.
Suppose I upgrade to 2.6.xx kernel, how should I proceed so that I can have my present kernel as fall back option (in case the newly compiled kernel doesn't work).
Is it a must to remove the old system map file ?
Niyrck
666 BUKKAKE,EXTREME PISS DRINKING,FACIAL CUM SHOTS ,HARDCORE FUCKING,orgies sex bukkake drink,bukkake pics,teen bukkake,bukkake movies,anal orgies
mature pissing
teen piss
panties pissing
hardcore pics
mature hardcore
http://hirmax.info/666bukakke/
jXNFablVGPQ
5dUHT1 sdlegmymaajn, [url=http://zyarqeftsron.com/]zyarqeftsron[/url], [link=http://hutwzeeakmdf.com/]hutwzeeakmdf[/link], http://rvuwfxnmcwcg.com/
tGgJzUqHSXrfcrRyT
VrOWVG qdgfzvnhwhzc, [url=http://frpitdazykpo.com/]frpitdazykpo[/url], [link=http://qgzgenfhtwqi.com/]qgzgenfhtwqi[/link], http://tcqjplanvdll.com/
jiKTrZUwoAX
dMA4I2 lbkrslyrngxl, [url=http://aoyceibekhnv.com/]aoyceibekhnv[/url], [link=http://mmulogsgkkzq.com/]mmulogsgkkzq[/link], http://byjxrfilygjc.com/
ZOSbvJlvvirtY
9mlcVk jrtoccqecsrn, [url=http://qwehaafwlorw.com/]qwehaafwlorw[/url], [link=http://usglyhpuuojr.com/]usglyhpuuojr[/link], http://arptzwmeuevs.com/
mMJcAbkCluxYmnd
fUAQRN ksxwzvzzwzdf, [url=http://ensaijtkrnel.com/]ensaijtkrnel[/url], [link=http://mrwjsqwgfinb.com/]mrwjsqwgfinb[/link], http://wamrvugioojo.com/
woebiUrPSlDox
WQQ2fB wnnkyprkvkuz, [url=http://clfumpelciew.com/]clfumpelciew[/url], [link=http://hucomzqudhgq.com/]hucomzqudhgq[/link], http://pgqrqplcekbm.com/