The title says it all; kernel 2.6.9 breaks lots of kernel modules due to the renaming of pci_find_class to pci_get_class, which results in unresolved symbols at module loading time. The attached patch must be applied before compiling the kernel helper module (svgalib_helper) on 2.6.9 (the compiler doesn't barf on the unknown symbol, only throws a warning) for the module to operate correctly. Reproducible: Always Steps to Reproduce: 1. compile module 2. try to modprobe svgalib_helper 3. Actual Results: dmesg results: |quote| svgalib_helper: Unknown symbol pci_find_class |/quote| Expected Results: Loaded the module correctly.
Created attachment 38788 [details, diff] patch to kernel/svgalib_helper/main.c to correct behavior
http://linux.bkbits.net:8080/linux-2.5/hist/drivers/pci/search.c?nav=index.html|src/|src/drivers|src/drivers/pci http://linux.bkbits.net:8080/linux-2.5/hist/include/linux/pci.h?nav=index.html|src/|src/include|src/include/linux i dont see any changes reflecting what you describe and i just updated my bitkeeper source tree a few hours ago and my pci files were not changed in any way built svgalib-1.9.19 against a bk checkout from today -> this bug is invalid
Before invalidating this bug report, please check out a similar report for the nvidia kernel module. The name hasn't yet disappeared in the official kernel, but will soon. It has already disappeared in the -mm series, and that's what I'm using.
re-open then when the change goes into mainline
Err, this won't do it IMHO. You have a kernel in portage which breaks most modules (2.6.9-rc1-mm1). So, either, you fix the mm-kernel to give pci_get_class it's original name, or you start fixing modules for this kernel. A non-involved Gentoo user is given the hint that he/she might try out mm-sources if she needs bleeding edge drivers (that's in the installation doc), but then you have a kernel which can't even load the nvidia-drivers anymore. I see that svgalib is less important than nvidia-drivers, but still, it wouldn't hurt to make this patch conditionally already now, as there are kernels in portage where the name has changed, and AFAICT, the name'll change globally soon for the 2.6 series. But, again, it's not my policy to decide...
*** Bug 64796 has been marked as a duplicate of this bug. ***