PCI hotplugging appears to be broken in 2.6.1
I've seen questions about this problem but no clear solutions. I am trying to upgrade the kernel of a clean Slackware 9.1 system (which I installed immediately before trying to do this) to 2.6.1 from 2.4.22. The compiled kernel loads successfully, but no modules for PCI devices load automatically as they did in 2.4.22. USB hotplugging seems to be fine, and the rc.modules script loads parallel port support manually. If I load a module for a PCI device at the command line, everything is fine and the device functions (e.g. 'modprobe 8139too' allows me to get on-line).
Slackware 9.1 claims 2.6.x readiness, and indeed, it sports module-init-tools 0.9.14. I checked versions of various packages against the list in Documentation/Changes. Only procps was a few releases out-of-date, and I tried upgrading it on a previous system and it didn't have any effects.
I know a lot of people are having this problem. If you've had it, have you found anything that works for you? If not, do you know what could be wrong? Suggestions are appreciated!
Did you enable this when you were compiling the kernel?
I ask because I remember specifically being asked this when I did mine and I answered YES. I don't think it is enabled by default.
I did make oldconfig and it took all the default answers to the stuff that wasn't "new".
Truth be told, I've tried both 'make oldconfig' and 'make menuconfig'. I used oldconfig with a .config file from another 2.6.1 attempt (where I went through all the options one by one using xconfig) and then I used menuconfig to tweak various settings to try to get PCI modules to load at bootup.
I've tried compiling PCI hotplugging into the kernel and as a module (which I can't imagine would work for bootup). I assume that I have an ACPI hotplug controller (this board is less than two months old), and I've tried both compiling in and module for that as well. I've also tried disabling the ACPI hotplug option and compiling with no controller selected.
As you can see, I've been through just about everything and I'm running out of ideas. :(
Something else to check:
Have you updated /etc/modprobe.conf yet?
If not then (as root) do the following:
This fixed the problem for me
I also searched for a long time, but after installing the hotplug packet from sourceforge suse 9.0 (Kernel 2.6.3) is able to load modules via hotplug.
Download the srpm from sourceforge.net
copy the src-rpm to "/usr/src/packages/SRPMS/
make your rpm via "rpmbuild --rebuild hotplug-2004_01_05-1.src.rpm "
you will get two packages in "/usr/src/packages/RPM/noarch/"
install both (rpm -Uvh *.rpm) and restart.
On my System it works - for example i needed the usblp driver for printing. Bevor installing the new hotplug package I need to load it manually via modprobe now it works automatically like in kernel 2.4.
Hope I could have helped you!
I'm using 2.6.3 right now...I came across a patch against the PCI hotplug scripts and applied it--everything works fine now. I wish I could remember where I found that patch, though. :confused:
|All times are GMT -5. The time now is 10:29 PM.|