Thank you Muli & Emil.

Muli Ben-Yehuda wrote:

Functions marked __init will be freed, if they're built-in. In 2.4,
__init code in modules was ignored, but in 2.5 it's removed as
well. To answer your question, check if pci_fixup_device is marked
__init or not.


pci_fixup_device comes with no __init. But thanks anyhow.

Kohn Emil Dan wrote:

For an identifier to appear in /proc/ksyms, it is not sufficient to be
non-static. It must be exported as well using the EXPORT_SYMBOL() macro.
So if that function is not marked exported, then it will not appear in
/proc/ksyms.

Aha! It so happens that quirks.c is the only one to mention another symbol, pci_pci_problems, which happens to be EXPORT_SYMBOL'ed (at pci.c, in this case). And indeed, pci_pci_problems appears in ksyms. So now I know for sure that I have quirks.c in the kernel.

As for the original problem, well, I have to admit that I've been a bit sloppy here. I have 82437MX on my laptop, but it's 82437 (a *totally* different chipset) that is marked as buggy. So no error message was expected (they have different IDs).

But is was still interesting to know.

And BTW, a nice lesson I've learned from all this, is how useful it is to "grep -r" the kernel source on hardware model numbers.

Thanks again,
  Eli



--------------------------------------------------------------------------
Haifa Linux Club Mailing List (http://www.haifux.org)
To unsub send an empty message to [EMAIL PROTECTED]




Reply via email to