General question about modules - Slackware

This is a discussion on General question about modules - Slackware ; I had always thought that I needed to enter or uncomment the necessary modprobe statements in /etc/rc.d/rc.modules. It seems I don't have to do that with the Slack 12 huge.smp kernel. Who and how are the modules loaded? It seems ...

+ Reply to Thread
Results 1 to 13 of 13

Thread: General question about modules

  1. General question about modules

    I had always thought that I needed to enter or uncomment
    the necessary modprobe statements in /etc/rc.d/rc.modules.

    It seems I don't have to do that with the Slack 12 huge.smp
    kernel. Who and how are the modules loaded? It seems that
    in case of order-dependent modules the automatic procedure
    is remiss.

    Just what does happen with modules?

  2. Re: General question about modules

    root wrote in news:dhyaj.24$3F.17@newsfe05.lga:

    > I had always thought that I needed to enter or uncomment
    > the necessary modprobe statements in /etc/rc.d/rc.modules.


    True enough, in general and for that kernel.

    > It seems I don't have to do that with the Slack 12 huge.smp
    > kernel. Who and how are the modules loaded? It seems that
    > in case of order-dependent modules the automatic procedure
    > is remiss.


    The 'huge' kernels are so named because most modules are compiled into
    them, IIUC. That's why most things just work without manipulating the
    module config files. And why manipulating the module config files has
    little to no effect, generally.

    BTW, Slackware's installation instructions for 12.0 recommend that you not
    use a huge kernel generally; instead it suggests that you go to the trouble
    of using one of the generic kernels and build/tweak your own initrd.

    Also, IIRC, the installer's kernel is _not_ the huge one. But you'd have
    to mount the installer CD/DVD and check out what is actually used; I
    forget.

    > Just what does happen with modules?


    Most of the normal stuff, just that the huge kernel already has them all
    compiled into it. ;v)

    --
    The email address, above, is most certainly munged. Perhaps you
    might reply to the newsgroup, instead? Thanks!

  3. Re: General question about modules

    james wrote:

    By huge I mean the result of the kernel source that comes
    with the package. In that nearly every option is set to M
    instead of *. You may be correct for the kernel used on
    the install disk, but when you build the kernel from
    the source, after make oldconfig, all the stuff is set
    to modules which, somehow, get magically loaded. They
    are loaded even though every line in rc.modules is
    commented out.

    > Most of the normal stuff, just that the huge kernel already has them all
    > compiled into it. ;v)
    >


    Maybe I missed a flag in building the kernel.

  4. Re: General question about modules

    NoEMail@home.org wrote:
    > I had always thought that I needed to enter or uncomment
    > the necessary modprobe statements in /etc/rc.d/rc.modules.
    >
    > It seems I don't have to do that with the Slack 12 huge.smp
    > kernel. Who and how are the modules loaded? It seems that
    > in case of order-dependent modules the automatic procedure
    > is remiss.
    >
    > Just what does happen with modules?


    Slackware 12 is much better at loading modules automatically. This is a
    result of the 2.6 kernel and udev. I've found on several systems that
    few if any modules need to be specifically loaded in rc.modules. It even
    auto-loads filesystem modules when you need them.

  5. Re: General question about modules

    On 2007-12-21, ljb wrote:
    > NoEMail@home.org wrote:
    >> I had always thought that I needed to enter or uncomment
    >> the necessary modprobe statements in /etc/rc.d/rc.modules.
    >>
    >> It seems I don't have to do that with the Slack 12 huge.smp
    >> kernel. Who and how are the modules loaded? It seems that
    >> in case of order-dependent modules the automatic procedure
    >> is remiss.
    >>
    >> Just what does happen with modules?

    >
    > Slackware 12 is much better at loading modules automatically. This is a
    > result of the 2.6 kernel and udev. I've found on several systems that
    > few if any modules need to be specifically loaded in rc.modules. It even
    > auto-loads filesystem modules when you need them.


    Good. The intrepid Root's question really got me wondering. I did a bunch of
    ls -r /etc checks and was amazed to find not one of them
    there.

    Nothing about udev with apropos, so I did a locate udev and came up with this:

    /usr/src/linux-2.6.21.5/Documentation/dvb/udev.txt
    /usr/src/linux-2.6.21.5/Documentation/aoe/udev.txt
    /usr/src/linux-2.6.21.5/Documentation/aoe/udev-install.sh
    /etc/udev
    /etc/udev/rules.d
    /etc/udev/rules.d/64-device-mapper.rules

    Thanks much,

    Tom

    --
    simpleman.s43
    That would be at gee male


  6. Re: General question about modules

    On 2007-12-20, james wrote:
    >
    > The 'huge' kernels are so named because most modules are compiled into
    > them, IIUC. That's why most things just work without manipulating the
    > module config files. And why manipulating the module config files has
    > little to no effect, generally.



    No, the difference between the huge* and generic* kernels isn't too
    significant, actually. Most things are modular in both of them - it's
    just that the huge* kernels contain support for all commonly used
    filesystems and a few other things that are needed to get a system's
    root filesystem mounted for init to be available.


    > BTW, Slackware's installation instructions for 12.0 recommend that you not
    > use a huge kernel generally; instead it suggests that you go to the trouble
    > of using one of the generic kernels and build/tweak your own initrd.



    Indeed. It's really not that much trouble, and it should be even less
    trouble with the next Slackware release -- the mkinitrd in -current has
    support for a config file to be used where the
    admin can define the root filesystem, needed modules, and other such
    parameters and then pass the -F flag to mkinitrd(8) to use the config
    file. It's not well-tested code, to be honest, which is likely why
    Pat didn't advertise it in the ChangeLog, but it's fairly simple code,
    so it should work just fine. Even so, the "old" behavior of mkinitrd
    wasn't changed at all, so if the -F argument isn't passed when executing
    it, it will work just like it always did.


    > Also, IIRC, the installer's kernel is _not_ the huge one. But you'd have
    > to mount the installer CD/DVD and check out what is actually used; I
    > forget.



    The kernel used by the installer is indeed the hugesmp.s kernel by default,
    although you can make it use huge.s instead if needed.

    -RW

  7. Re: General question about modules

    On 2007-12-20, root wrote:
    > I had always thought that I needed to enter or uncomment
    > the necessary modprobe statements in /etc/rc.d/rc.modules.
    >
    > It seems I don't have to do that with the Slack 12 huge.smp
    > kernel. Who and how are the modules loaded? It seems that
    > in case of order-dependent modules the automatic procedure
    > is remiss.
    >
    > Just what does happen with modules?



    The short version is that udev handles the loading of kernel modules
    to support hardware. For most hardware, the kernel detects it, an
    event is generated, udev catches the event, and loads the supporting
    module. That's why you generally don't have to uncomment any lines
    in rc.modules to force-load any of them.

    There are certainly situations that will require you to force-load
    modules - for example, acpi modules.

    -RW

  8. Re: General question about modules

    Robby Workman wrote:
    > There are certainly situations that will require you to force-load
    > modules - for example, acpi modules.


    This shouldn't be the case anymore as of 2.6.23 - ACPI modules will now be
    autoloaded, if the devices they support are detected.

    -Carlos
    --
    E-Mail: carlos@strangeworlds.co.uk
    Web: strangeworlds.co.uk
    GPG Key ID: 0x23EE722D

  9. Re: General question about modules

    On 2007-12-21, Carlos Corbacho wrote:
    > Robby Workman wrote:
    >> There are certainly situations that will require you to force-load
    >> modules - for example, acpi modules.

    >
    > This shouldn't be the case anymore as of 2.6.23 - ACPI modules will now be
    > autoloaded, if the devices they support are detected.



    I'd read that, but I *think* it's 2.6.24 iirc.

    -RW

  10. Re: General question about modules

    Robby Workman wrote:
    > I'd read that, but I *think* it's 2.6.24 iirc.


    The necessary code change went in for 2.6.23 (since all ACPI device drivers
    had to be updated to handle it).

    So your modules will already be autoloading if their _HID devices can be
    found by ACPI (I've just confirmed this quickly with a module here).

    -Carlos
    --
    E-Mail: carlos@strangeworlds.co.uk
    Web: strangeworlds.co.uk
    GPG Key ID: 0x23EE722D

  11. Re: General question about modules

    On 2007-12-21, Carlos Corbacho wrote:
    > Robby Workman wrote:
    >> I'd read that, but I *think* it's 2.6.24 iirc.

    >
    > The necessary code change went in for 2.6.23 (since all ACPI device drivers
    > had to be updated to handle it).
    >
    > So your modules will already be autoloading if their _HID devices can be
    > found by ACPI (I've just confirmed this quickly with a module here).



    Very good; this is one of those occasions where I *like* to be wrong
    Time to see what I can deprecate in my rc.modules.local...

    Thanks!

    -RW

  12. Re: General question about modules

    Robby Workman wrote in
    news:%AHaj.35244$rc2.29721@bignews1.bellsouth.net:

    > On 2007-12-20, james wrote:
    >>

    [Snippage. We include text in replies to give context and to preserve
    answers for future searches. My text was wrong. ;vD ]
    >
    > No, the difference between the huge* and generic* kernels isn't too
    > significant, actually. Most things are modular in both of them - it's
    > just that the huge* kernels contain support for all commonly used
    > filesystems and a few other things that are needed to get a system's
    > root filesystem mounted for init to be available.
    >
    >> BTW, Slackware's installation instructions for 12.0 recommend that
    >> you not use a huge kernel generally; instead it suggests that you go
    >> to the trouble of using one of the generic kernels and build/tweak
    >> your own initrd.

    >
    > Indeed. It's really not that much trouble, and it should be even less
    > trouble with the next Slackware release -- the mkinitrd in -current
    > has support for a config file to be used where

    [snip]
    >

    [more wrongness expunged]
    >
    > The kernel used by the installer is indeed the hugesmp.s kernel by
    > default, although you can make it use huge.s instead if needed.
    >
    > -RW


    Obviously I need to do more reading! Thanks for the corrections.
    Note to self: verify statements before posting...

    --
    The email address, above, is most certainly munged. Perhaps you
    might reply to the newsgroup, instead? Thanks!

  13. Re: General question about modules

    On 2007-12-21, james wrote:
    >
    > [Snippage. We include text in replies to give context and to preserve
    > answers for future searches. My text was wrong. ;vD ]
    >
    > Obviously I need to do more reading! Thanks for the corrections.
    > Note to self: verify statements before posting...



    No worries - it happens to all of us from time to time

    -RW

+ Reply to Thread