[ltp] ibm_acpi and modprobe.conf
linux-thinkpad@linux-thinkpad.org
linux-thinkpad@linux-thinkpad.org
Sun, 31 Jul 2005 15:48:05 +0100 (BST)
FeRD,
Wow, long mail. Unsure I can do it the honour of a full respone on
every point, but I'll try to respond to some:
> Careful there -- are you sure about the "ignores settings" thing being true?
> If so, that would be weird, as all the other boot-loaded modules respect
> modprobe.conf.
Well, you know... I'm not finding that so, but it may be me doing
something wrong. I also --preload radeonfb into my initrd, as you'll
see on another thread on this list, and the mkinitrd manpage implies
this will respect options in modprobe.conf - but so far I can't get
it to.
> However, if my "multiple versions" hypothesis is correct, it
> may explain the problem... version 0.8 of the ibm_acpi module didn't do much
> of anything with "experimental=1",
Yes indeed - I really actually need to do some proper rebooting and
experimenting with both problems. Lazy me, I'll try and do so in the
next few days.
> I don't load it at bootup, it's autodetected. In the same way I don't load
> the ide, yenta, or serio drivers. Just hardware autodetection Doing The Right
> Thing(tm), in my mind. *shrug* More black magic, but certainly black magic
> with precedent. Like I said, there are plenty of hardware drivers I don't
> load by hand. (Like... all of them.)
It's the black magic thing that gets me: I *should* be able to
understand this, but never been good at the low-level hardware
detection thing at bootup. If anyone can push me in the right
direction as to how the need for ibm_acpi is recognised from hardware
and the module loaded at bootup with nothing in modprobe.conf, I'd
be grateful.
>> Maybe I
>> could rename the kernel one and reboot, yes.
>
>
> I'd be VERY interested in the results of that test,
Right. I should do that. Yes :)
> If you are indeed getting the old version loaded, the question comes back to
> WHY. If I were to speculate, I'd guess that perhaps ibm_acpi.ko itself isn't
> in the initrd, but perhaps a modules.dep _IS_ that the system is using for
> boot-time module loading.
Oh, it's indeed not in the initrd - very easy to unpack and inspect
it with gzip.
> Going back to the deletion issue -- hey, I agree with you, I don't like it
> either. But I also don't like having two versions of the module installed,
> especially since there's NO justifiable reason for that. (Meaning, it's NEVER
> the situation you WANT to arrive at.) It's not like you can EVER use both at
> once. That's why the kernel doesn't even really seem to HAVE a strong and
> universal concept of module "versioning". (I think that's part of the problem
> here, and why it's so hard to do things like check "whch version" of a module
> is loaded. Plenty of modules don't even DISPLAY a version via modinfo.) I
> don't even like having two versions of a shared library installed unless I
> have to, and there ARE situations where that's desirable/necessary. With
> kernel modules, it's ALWAYS got to be one or the other, in reality, so I'm
> especially reticent about the whole two-versions thing.
Yes - two sides to every story. It seems though to me that there are
valid conceptual parts of unix where two copies of the same thing
exist, and a formal method is used to ensure which gets used: $PATH
and $LD_LIBRARY_PATH for instance. In my naivety (not being a kernel
hacker) I assumed some similarly sensible scheme was being followed
here for kernel modules: that anything in
/lib/modules/`uname -r`/kernel/drivers/acpi (=the standard driver)
would be overridden by anything in
/lib/modules/`uname -r`/acpi (=a newer one I added)
which would make sense (to me!), and similarly for all. It does
appear however that this scheme isn't actually formalised, even
though it seems to happen, at least after bootup.
> Here's how I look at the options here:
>
> 1. The "right solution" to this is probably to roll your own kernel RPM
> including ibm_acpi version 0.11. That seems like overkill, and a nightmare to
> have to maintain. But if you wanna be a purist, the Don Quixote Institute for
> Purism recommends this solution vehemently and unwaveringly. :)
I used to be THAT purist - I now am vehemently RPM purist through
sheer exhaustion :)
> 3. In a section of your original message I cut out, you mentioned you're
> rolling your own initrd for swsusp2. So am I, but automagically using
> Matthias Hensler's <a href="http://mhensler.de/swsusp/">Fedora Core 3/4
> Swsusp2 RPMs</a> and the corresponding mkinitrd.
Indeed, same here, as I just actually posted in another message,
coincidentally. I've caused Mathias some real pain with fs
corruptions in suspend2 on the suspend2-users list, so thanks and
sorry Mathias, if you're reading :)
> and also to propose we ask that he start rolling
> version 0.11 of ibm_acpi into his releases. That's likely a quicker process
> than getting the official releases up to date, and there is some precedent
> there: Matthias' RPMs include the ntfs module, which isn't part of the FC4
> official builds.
Ah, hmm, cough. I hadn't noticed Mathias *did* include this.
Handy yes, but the thing that really attracts me to Mathias's kernels
(and why I tried to do this previously with *lots* of help from the
suspend2 people - see http://www.suspend2.net/fedora/ for the relic
of this) is that I think it's really important to stick to Fedora
kernels as far as possible. We all know the history of "enhancements"
in other OS's. I have to express some reticience here to the idea
that Mathias's kernels might start *replacing* Fedora modules with
newer ones on request. Much better to add an RFE to Fedora's bugzilla
I think, if there aren't any proprietary issues (can't imagine there
could be) as would be the case with ntfs. This might be a bit off-topic
here and an issue for Mathias alone though.
So yes - I do use Mathias's mkinitrd-swsusp2 - just that I have to do
my own to --preload=radeonfb too, so that I can use the S3 power
drain reduction patch (see other threads).
I mustn't go on, but thanks also for you comments on ibm_acpi,
modinfo and the presence/absence of /sys info - I hadn't been looking
that closely. I really need to just do some renaming, rebooting and
playing with modprobe.conf and initrd. Which I will :)
Honey