Howto compile 2.6 kernel for RedHat / Fedora

Submitted by jeffmcclure
on September 28, 2003 - 8:08am

Is there any information regarding how to compile the 2.6 kernel to work with Redhat 9 / Redhat Fedora? I've gotten it to compile and boot just fine, however it does not recognize any USB devices, PCMCIA devices, or FireWire drives.

re: howto...

Jeremy
on
September 28, 2003 - 9:34am

Hi Jeff,

If you refer to KernelTrap's 2.6 howto, it links to two RedHat 9 specific documents, here and here.

kernel-2.6 for Fedora

Anonymous
on
October 2, 2003 - 2:12am

just check for kernel-2.6 rpms for redhat from http://people.redhat.com/arjanv/2.5/RPMS.kernel/

Hope that helps!!!

The very easy way to upgrade RedHat to 2.6 kernel

Anonymous
on
November 30, 2003 - 6:33pm

Wanna compile a new kernel ? How to make it easy ?
===============================
===============================
1) Download all RPMs from
http://people.redhat.com/arjanv/2.5/RPMS.kernel/
2) download an original kernel source and compile it, how it describe in README.
3) do not forget the next about:
/sbin/mkinitrd myLinux.img 2.0.6-test11
cp bzImage /boot/myLinux
4) and than, adjust some lines in your grub.cfg
that's all !
Vadim Kataev http://www.compuvisor.net

Need More Info

Anonymous
on
February 13, 2004 - 10:37pm

hello:

I have Fedora core 1.
I would like to upgrade to 2.6.2.
EXACTLY how do I do this?
I've downloaded what look like the RPMs that I need (I didn't get both the -devel and the -source and the actual ones).
Why do I need these extra RPMs? Do I install them before or after I build the Kernel from source? Ug!

Please be very, very specific. I'm a computer professional, and not a total newbie (I've built from source before) but with a leap like 2.4 to 2.6.2, I'm sure there's nonobvious stuff here.

It'd be great if there was a Yum entry with any extraneous directions ("add exactly the following to your yum.conf, type this:" sorta stuff).

Thanks for your input anyone/everyone...
-- Kevin J. Rice

Most of these extra RPM's sim

Anonymous
on
February 20, 2004 - 7:04pm

Most of these extra RPM's simply point out various incompatibilities between Redhat and other Distro's. Upon upgrading to kernel version 2.6.x, various options that worked in the default 2.4.x Redhat version are deprecated and no longer work properly. You will need to upgrade those packages to ensure the kernel upgrade goes smoothly

And install them before you upgrade the kernel. It doesn't hurt to have the upgrades on an older kernel version, but it does hurt to have the older versions on an upgraded kernel.

Need More Info

Anonymous
on
February 20, 2004 - 10:30pm

As a computer professional, you might have looked
around a bit for documentation from the developer
that produces those RPMS:

http://people.redhat.com/arjanv/2.5/readme.txt

Nobody said you need those "other" RPMS.
-devel and the -source are for developers/professionals,
who need to build the kernel (or pieces that need
header files) from source.

You will probably find more specifics on RPM here:
http://www.redhat.com/docs/books/max-rpm/

If you aren't interested in reading or downloading
RPMS (just getting it to work), use YUM:
http://www.fedoranews.org/tchung/howto/2003-11-09-yum-intro.shtml

good luck

U dumb fool.

Anonymous
on
March 7, 2004 - 10:38am

U dumb fool.

Try this...

Anonymous
on
December 21, 2003 - 3:55am

I had the same problem... Try commenting out your usb-controller alias and adding the following change in your /etc/modprobe.conf

alias usb-controller1 uhci-hcd

My orginal line was "alias usb-controller uhci-usb"

Cheers

Sam

kernel tainted

svu
on
February 18, 2004 - 1:32pm

Upgraded to 2.6.2 (from Fedora development). Working perfectly ok. But having problem with external modules (ndiswrapper and winmodem). They are claimed to support 2.6 - but in really I get some funky dmesg:

kernel: ndiswrapper: no version for "struct_module" found: kernel tainted.

Experts here - what is struct_module and how to make modules give proper version for it?

TIA

It is very likely there will

Anonymous
on
February 20, 2004 - 6:44pm

It is very likely there will be a module you need that isn't in the RPM. The RPM's work great, but he has only compiled in the modules *MOST* people use. If you have any kind of older or unpopular hardware, you will need to download the source RPM and add in those extra modules manually.

(Alternatively, you could do what I did, since *almost* everything worked with the actual RPM and I didn't want to download the source too, I downloaded the kernel from kernel.org and it automatically picked up on the config file used for the RPM. I just made adjustments as necessary. If all goes well (I'm compiling now) I will apt-get remove the RPM).

Sorry, I know nothing about your error message.

fedora 2.6 kernel source rpm

Anonymous
on
March 7, 2004 - 6:38pm

I upgraded to 2.6 when 2.6.2 came out and used the fedora rpms that arjanv provides and the 2.6.2 kernel source rpm, however when time came to patch 2.6.2 to 2.6.3 voila, the patch would not apply (yes I am aware of what directory I have to apply the patch from now). The fedora 2.6 kernel is not a vanilla kernel and really annoyed me (I'm on dialup).

So I recommend anybody using fedora to download the vanilla 2.6 kernel source from kernel.org, to save anybody wasting time or bandwidth.

very true very true

Anonymous
on
June 22, 2004 - 3:44pm

that is so true because the kernel versions from redhat are sub versions and not a vanilla version so they can be annoying like that.

the trick is to try and modiefy the makefiles and config files because redhat rpm up2date needs the use of subversion stuff so do that if you want to use up2date program. Its alot of work though so be warned redhat dont make it easy for you.

on the other hand the kernel.org kernels are sweet because they have a full set only problem is making sure you update all the dependancy modules required it may compile but it dont mean it will always work. again a hell of alot of work worth it though.

i have a multiprocessor machine so i get all the benefits from building my own kernels its just time consuming and geting what i call closed modules to work (ATI's drivers intel programs VMware etc) which have alredy been compiled and dont have source code with them is very difficult sometimes after you upgrade so make sure you get all dependencys and librarys more disk space but hey it all good.

ther is above as describe the Yum method which i use aswell for making sure you have all dependency bits. redhat have a tendency of removing allot of these as they dont think they are needed so they leave it up to you to get a hold of them as and when you need them i.e. kernel upgrading.

Re: kernel tainted

Anonymous
on
March 14, 2004 - 9:14pm

(better late than never...)

kernel: ndiswrapper: no version for "struct_module" found: kernel tainted.

Perfectly normal. The modules you are inserting are not GPL, thus loading them makes the kernel no longer fully "GPL'd", thus, it is "tainted". You don't have a problem, or at least, that message does not indicate any problem. If you are getting no other messages, then the module has loaded successfully (issue an lsmod command to verify, and/or check /var/log/messages to see what else it has to say).

Ash.

Cannot Create wlan0 using ndiswrapper in FC4

rabil (not verified)
on
December 25, 2006 - 2:48am

I've done the usual (after blacklisting bcm43xx and using modprobe -r bcm43xx):

su -
ndiswrapper -i bcmwl5.inf
ndiswrapper -l
installed drivers:
bcmwl5 driver installed, hardware (14E4:4318) present (alternate driver: bcm43xx)
depmod -a
modprobe ndiswrapper

But no matter what I do, I can't create wlan0. To me it seems bcm43xx is interfering but I don't know what else to do. I had wlan0 via ndiswrapper working in FC4 on my laptop with the original hard drive. I've tried installing FC6 on the new drive but I have similar problems. The laptop has more than 1 gb of memory but wlan0/ndiswrapper for the bcm4318 worked just fine using the original hard drive. I've included some relevant output below. Any suggestions? What am I missing? Thanks.

[root@localhost dev]# dmesg | grep ndiswrapper
ndiswrapper: no version for "struct_module" found: kernel tainted.
ndiswrapper version 1.27 loaded (preempt=no,smp=no)
usbcore: registered new driver ndiswrapper

cat /var/log/messages
Dec 25 04:15:15 localhost kernel: bcm43xx driver
Dec 25 04:15:15 localhost kernel: ACPI: PCI Interrupt 0000:02:03.0[A] -> GSI 19 (level, low) -> IRQ 193
Dec 25 04:15:15 localhost kernel: bcm43xx: Chip ID 0x4318, rev 0x2
Dec 25 04:15:15 localhost kernel: bcm43xx: Number of cores: 4
Dec 25 04:15:15 localhost kernel: bcm43xx: Core 0: ID 0x800, rev 0xd, vendor 0x4243, enabled
Dec 25 04:15:15 localhost kernel: bcm43xx: Core 1: ID 0x812, rev 0x9, vendor 0x4243, disabled
Dec 25 04:15:15 localhost kernel: bcm43xx: Core 2: ID 0x804, rev 0xc, vendor 0x4243, enabled
Dec 25 04:15:15 localhost kernel: bcm43xx: Core 3: ID 0x80d, rev 0x7, vendor 0x4243, enabled
Dec 25 04:15:15 localhost kernel: bcm43xx: PHY connected
Dec 25 04:15:15 localhost kernel: bcm43xx: Detected PHY: Version: 3, Type 2, Revision 7
Dec 25 04:15:15 localhost kernel: bcm43xx: Detected Radio: ID: 8205017f (Manuf: 17f Ver: 2050 Rev: 8 )
Dec 25 04:15:15 localhost kernel: bcm43xx: Radio turned off
Dec 25 04:15:15 localhost kernel: bcm43xx: Radio turned off
Dec 25 04:15:15 localhost kernel: bcm43xx: PHY connected
Dec 25 04:15:15 localhost kernel: bcm43xx: Error: Microcode "bcm43xx_microcode5.fw" not available or load failed.
Dec 25 04:15:15 localhost NetworkManager: (): nm_system_device_set_up_down_with_ifac e() could not bring device eth1 up. errno = 2
Dec 25 04:15:16 localhost kernel: ACPI: PCI interrupt for device 0000:02:03.0 disabled
Dec 25 04:15:27 localhost NetworkManager: (): eth1: driver's Wireless Extensions ver sion (0) is too old. Can't use device.
Dec 25 04:15:27 localhost NetworkManager: nm_try_acquire_mutex: assertion `mutex != NULL' failed
Dec 25 04:15:27 localhost NetworkManager: nm_try_acquire_mutex: assertion `mutex != NULL' failed
Dec 25 04:23:02 localhost system-config-network[3024]: -+ //etc/modprobe.conf eth0 alias e100
Dec 25 04:23:02 localhost system-config-network[3024]: chmod 0644 //etc/sysconfig/networking/devices /ifcfg-eth0
Dec 25 04:23:02 localhost system-config-network[3024]: mv //etc/resolv.conf //etc/resolv.conf.bak
Dec 25 04:23:02 localhost system-config-network[3024]: ln //etc/sysconfig/networking/profiles//defau lt/resolv.conf //etc/resolv.conf
Dec 25 04:30:24 localhost init: Trying to re-exec init

Blacklist bcm43xx

Victor Rades (not verified)
on
April 20, 2007 - 12:04pm

# echo "blacklist bcm43xx" >> /etc/modprobe.d/blacklist

Do this first.

USB External Drive on Fedora.

Anonymous
on
June 15, 2004 - 6:58pm

Actually it does support USB, I just played with mine and got it to work.
first "lsmod" to see if usb storage shows up, then if you are trying to get an external drive to work, here is what I did.

mkdir called eg -- usbdrive in /mnt

vi "fstab", can be found in /etc/fstab add these lines ---"/dev/sda1 /mnt/usbdrive vfat user,noauto,umask=0 0 0" leave out the colon! you can copy and paste mine.
then disconnect the usb drive the run "tail -s 5 -f /var/log/messages"
plugin the drive and look to see what tail is doing. Then mount your usb drive. Hope this helps. By the way, I forget to mention, I could not get my NTFS drive to work until I convert back to FAT.
Cheers.

Success with linux 2.6 compile (PII, RH9)

LorenHeal
on
October 21, 2004 - 9:43am

I was trying to compile the 2.6 kernel on my dual PII with a freshly installed/patched RedHat 9. I got the kernel source, etc, from kernel.org, unpacked it, and tried to 'make xconfig'. I got the following error:

-----------------------------------------------
scripts/kconfig/mconf arch/i686/Kconfig
can't find file arch/i686/Kconfig
make[1]: *** [xconfig] Error 1
make: *** [xconfig] Error 2
-----------------------------------------------

After much googling and some head scratching, I think the trouble is in the architecture of the host machine. The same thing probably applies to whenever 'uname -m' returns something other than one of the subdirectories of 'arch'.

I found the following procedure to work (replace $HOME with where you want the output to go; see the docs):
cd /path/to/linux-2.6.9
make O=$HOME/build/kernel ARCH=i386 mrproper
make O=$HOME/build/kernel ARCH=i386 xconfig
make O=$HOME/build/kernel ARCH=i386

I don't yet know if everything will test properly (or if the ARCH= setting interferes somehow with the processor type in the config file), but at least the build gets off the ground without having to recursively copy all of the i386, asm-i386, etc. directories to new *i686 counterparts.

I hope that helps someone.

Module Creation

Anonymous
on
November 3, 2004 - 11:22am

Can any body help me to create kernel modules in Fedora Core 2. I used "The Linux Kernel Module Programming Guide", but failed

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.