Linux - KernelThis forum is for all discussion relating to the Linux kernel.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
First time trying to update the kernel.
We have a need here to get an older redhat 2.4.28 kernel working so I started by downloading the Redhat Shrike ISO's to get me to 2.4.20-8.
I then downloaded linux-2.4.28.tar.bz2 from kernel.org.
- cd /usr/src
- tar -jxvf linux-2.4.28.tar.bz2
- cd linux2.4.28
Wasn't sure if I needed to play around with specifying options in a .config file or not so I just ran 'menu xconfig' and then saved it to create one.
- make dep bzImage
- check to make the sure the arch/i386/boot/bzImage file exists
- make modules
- make modules_install
- cp -p arch/i386/boot/bzImage /boot/vmlinuz-2.4.28
- cp -p Sytem.map /boot/System.map-2.4.28
- mkinitrd /boot/initrd-2.4.28.img `ls /lib/modules | grep 2.4.28`
- vi /boot/grub/grub.conf and create another entry the same as the other one but with updated values for the new 2.4.28 kernel
- reboot
Now when I reboot and pick that kernel I get a few errors as in:
kmod: failed to exec /sbin/modprobe -s -k block-major-8, errno = 2
VFS: Cannot open root device "LABEL=/" or 00:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 00:00
So, I'm not realy sure if I did something wrong, if it's related to my hardware or what this error is trying to tell me.
Is there a distro based on the 2.4.28 kernel I could go with instead and avoid my kernel upgrade challenges (as much fun as it is to learn I'm kind of time constrained).
Distribution: RHEL/CentOS/SL 5 i386 and x86_64 pata for IDE in use
Posts: 4,790
Rep:
Quote:
Wasn't sure if I needed to play around with specifying options in a .config file or not so I just ran 'menu xconfig' and then saved it to create one.
Well this is a good way to build a non-working kernel, you need to configure the kernel at this point, the defaults will not build a working kernel on the Red Hat family of Linux. Try again this time to get yourself a lot closer run before the 'make xconfig' step;
make mrproper
make oldconfig
This will get you about 90% of the way to building a working kernel, you still may need to make some changes however.
I just realized I don't have to go all the way back to 7.3 or 9.1 but can go with ES 3 instead.
We do have redhat support and I should be able to get to the kernel build I need hopefully by going with that version instead.
Time permitting I will try this whole process again as I would like to get the steps figured out so I'll look at the mproper and oldconfig options also once I get past the crunch I'm in.
Distribution: RHEL/CentOS/SL 5 i386 and x86_64 pata for IDE in use
Posts: 4,790
Rep:
You should be aware, Red hat does not "support" building vanilla kernels from kernel.org they only support building kernels from the sources they supply.
The latest RHEL-3 kernel is; kernel-2.4.21-47.0.1.EL dated: 10/19/2006
But it is a real good idea to check it first out because Red Hat typically backports from the upstream kernel sources at kernel.org and may have the support your looking for.
You should be aware, Red hat does not "support" building vanilla kernels from kernel.org they only support building kernels from the sources they supply.
The latest RHEL-3 kernel is; kernel-2.4.21-47.0.1.EL dated: 10/19/2006
But it is a real good idea to check it first out because Red Hat typically backports from the upstream kernel sources at kernel.org and may have the support your looking for.
Right you are. I just sort of took a leap of faith that U3 would be something later than 2.4.21.
So you're saying redhat may have there own kernel at the level I'm looking for (or at least check with them).
Otherwise I'll check out fedora or some other distro.
I was under the impression that we needed to be using a red hat based distro (for some reason) but I guess that isn't the case just has to be 2.4.28 so we can try and add a broadcom tg3.o driver.
Distribution: RHEL/CentOS/SL 5 i386 and x86_64 pata for IDE in use
Posts: 4,790
Rep:
The base for the Red Hat kernel is the vanilla 2.4.21 kernel source, but this is the 47th main update with a couple of added tweaks more or less. This means that Red hat has made at least 47 versions of backports, tweaks and other additions/changes to the base 2.4.21 vanilla kernel. Some may come from the 2.4.22 or better vanilla kernel series or from the 2.6 kernel series. The only way to tell is to look at all the patches from the Red Hat kernel source, the vanilla kernel tree patches (2.4 and 2.6) and a bunch of time. Consider it something like the 2.4.21 vanilla kernel on steroids.
Since you specified exactly what your looking for;
ok (I think).
Since red hat does their own kernel mods and I'm grabbing an open source build from kernel.org (correct terminology?) should I maybe be looking at something else to try?
You'd mentioned fedor earlier, I was thinking maybe I should try centos or something?
Would it be any easier potentially?
Is it also comlicated by the hw I'm using (I have limited hw to test on and they have sata drives).
btw, I tried the process again today using the mrproper and oldconfig make options and had to try and answer a bunch of questions. I ended up with a kernel build that said it was 'Uncompressing the kernel' this time.
Distribution: RHEL/CentOS/SL 5 i386 and x86_64 pata for IDE in use
Posts: 4,790
Rep:
It is a good thing, the updated RHEL4 update 4 kernel (kernel-2.4.21-47.0.1.EL) has the broadcom tg3.o driver you need included.
CentOS is basically RHEL minus the legal stuff that belongs to Red Hat, both are the same otherwise. Fedora Core is the replacement for the older RHL series. The latest release of CentOS-4.4 (with updates) is a 100% binary compatible equivalent of RHEL-4 update 4 (with updates). The latest version of Fedora Core is kinda like to RHL-15.
Just thought I'd update my progress here.
I got a document from Red Hat (Appendix A. Building the Kernel) which has worked prety well for me.
Same steps for the most part just at the end I run 'make install' and it automatically copies the new vlinuz-xxx file to /boot and edits my grub.conf file for me.
Mt system now boots with the new kernel and the only problem I have is my display.
When it switches to runlevel 5 it blanks out. I can ssh in and poke around but would this just be something I need to verify in my .config file?
Here's some stuff I snipped from the /var/log/messages file (not sure if it helps at all).
Jan 26 09:24:28 linuxtg3 gpm: gpm startup succeeded
Jan 26 09:24:29 linuxtg3 modprobe: modprobe: Can't locate module char-major-10-224
Jan 26 09:24:29 linuxtg3 crond: crond startup succeeded
Jan 26 09:24:30 linuxtg3 xfs: xfs startup succeeded
Jan 26 09:24:30 linuxtg3 modprobe: modprobe: Can't locate module char-major-10-224
Jan 26 09:24:30 linuxtg3 atd: atd startup succeeded
Jan 26 09:24:33 linuxtg3 modprobe: modprobe: Can't locate module char-major-10-224
Jan 26 09:24:35 linuxtg3 gdm[2864]: gdm_slave_xioerror_handler: Fatal X error - Restarting :0
Jan 26 09:24:35 linuxtg3 gdm[2866]: gdm_slave_xioerror_handler: Fatal X error - Restarting :0
Jan 26 09:24:39 linuxtg3 gdm[2868]: gdm_slave_xioerror_handler: Fatal X error - Restarting :0
Jan 26 09:24:42 linuxtg3 gdm[2870]: gdm_slave_xioerror_handler: Fatal X error - Restarting :0
Jan 26 09:24:42 linuxtg3 gdm[2809]: deal_with_x_crashes: Running the XKeepsCrashing script
Jan 26 09:25:37 linuxtg3 modprobe: modprobe: Can't locate module char-major-10-224
Jan 26 09:25:37 linuxtg3 modprobe: modprobe: Can't locate module char-major-10-224
Jan 26 09:25:37 linuxtg3 sshd(pam_unix)[2947]: session opened for user root by (uid=0)
Jan 26 09:25:37 linuxtg3 modprobe: modprobe: Can't locate module char-major-10-224
Distribution: RHEL/CentOS/SL 5 i386 and x86_64 pata for IDE in use
Posts: 4,790
Rep:
This is where reading the kernel sources ~/Documentation/devices.txt file comes in real handy. The device 10-224 is (according to the file) is for a non-serial mouse feature;
So disable this device/feature, if I remember correctly you have a file /etc/modules.conf (maybe???) where you can disable this by placing a comment (#) at the beginning of the line.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.