Bug 817760
| Summary: | systemd-modules-load.service fails when asked to load a built-in module | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | brice <dozab2000> |
| Component: | systemd | Assignee: | systemd-maint |
| Status: | CLOSED UPSTREAM | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 17 | CC: | fdor6, johannbg, jskarvad, lnykryn, lpoetter, metherid, mschmidt, msekleta, notting, plautrba, systemd-maint |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | i386 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2012-09-20 18:46:39 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
brice
2012-05-01 07:16:09 UTC
other additional info: systemctl | grep failed NetworkM...online.service loaded failed failed Network Manager Wait Online systemd-...s-load.service loaded failed failed Load Kernel Modules Do you have any files in these locations: /lib/modules-load.d /usr/lib/modules-load.d /usr/local/lib/modules-load.d /etc/modules-load.d /run/modules-load.d If so, what are their contents? (In reply to comment #2) > Do you have any files in these locations: > /lib/modules-load.d > /usr/lib/modules-load.d > /usr/local/lib/modules-load.d > /etc/modules-load.d > /run/modules-load.d > > If so, what are their contents? there is one file in /etc/modules-load.d. the file is apmd.conf and it contain one word: apm. ... which is built-in. Arguably systemd-modules-load should let this pass without error - modprobe does. Example from x86_64, when given a conf file with 'snd' (already loaded) and 'pcmcia' (built-in): # /lib/systemd/systemd-modules-load Inserted module 'snd' could not find module by name='0' Failed to insert 'pcmcia': Function not implemented That being said, apmd could be fixed to not ship a module-load file... i've unistall apmd and the modules-load service start without error, but the Network Manager Wait Online service don't start. Bug still alive with:
- apmd-3.2.2-16.fc17.i686
- systemd-44-14.fc17.i686
The problem seems to be at "/etc/modules-load.d/apmd.conf" file (installed by "apmd" rpm package), that produces a "Failed to insert 'apm': Function not implemented" error when loaded by "systemd-modules-load" binary:
--------- shell ----------
# systemctl stop systemd-modules-load.service
# systemctl start systemd-modules-load.service
# systemctl status systemd-modules-load.service
systemd-modules-load.service - Load Kernel Modules
Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
Active: failed (Result: exit-code) since Wed, 27 Jun 2012 18:57:02 +0200; 7min ago
Docs: man:systemd-modules-load.service(8)
man:modules-load.d(5)
Process: 1639 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
CGroup: name=systemd:/system/systemd-modules-load.service
Jun 27 18:57:02 localhost.localdomain systemd-modules-load[1639]: [48B blob data]
Jun 27 18:57:02 localhost.localdomain systemd-modules-load[1639]: Failed to insert 'apm': Function not implemented
--------- shell ----------
The details are:
- "systemd-modules-load.service" is launched by the "systemctl" command (like when booting).
- "systemd-modules-load.service" launches the "/usr/lib/systemd/systemd-modules-load" command.
- "/usr/lib/systemd/systemd-modules-load" command reads config files from "/etc/modules-load.d/" dir, and finds "/etc/modules-load.d/apmd.conf" (which is installed by "apmd" rpm package).
- "/usr/lib/systemd/systemd-modules-load" doesn't like the contents of "/etc/modules-load.d/apmd.conf", because "apm" (the content) is not an implemented function.
- So "/usr/lib/systemd/systemd-modules-load" stops running and returns an error code, that is detected by systemctl.
In few words, "systemd-modules-load.service" fails because "/usr/lib/systemd/systemd-modules-load" doesn't like the contents of "/etc/modules-load.d/apmd.conf".
So there is a bug in "/etc/modules-load.d/apmd.conf" and/or in "/usr/lib/systemd/systemd-modules-load".
Please change status to "confirmed".
(And fix the bug)
apmd shouldn't ask to load a module that doesn't exist. Actually, leaving with systemd - it should fail more gracefully. The service reports an error, but it still loads all other configured modules, doesn't it? Fixed the handling of builtin modules upstream: http://cgit.freedesktop.org/systemd/systemd/commit/?id=27fda47f40453e552ebccf7acb85f915cf34f23a Bug still alive with:
apmd-3.2.2-16.fc17.i686
systemd-44-17.fc17.i686
Details:
--------- shell ----------
# systemctl status systemd-modules-load.service
systemd-modules-load.service - Load Kernel Modules
Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
Active: failed (Result: exit-code) since Wed, 19 Sep 2012 17:10:24 +0200; 8min ago
Docs: man:systemd-modules-load.service(8)
man:modules-load.d(5)
Process: 363 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
CGroup: name=systemd:/system/systemd-modules-load.service
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
# systemctl stop systemd-modules-load.service
# systemctl start systemd-modules-load.service
Job failed. See system journal and 'systemctl status' for details.
# systemctl status systemd-modules-load.service
systemd-modules-load.service - Load Kernel Modules
Loaded: loaded (/usr/lib/systemd/system/systemd-modules-load.service; static)
Active: failed (Result: exit-code) since Wed, 19 Sep 2012 17:28:03 +0200; 7s ago
Docs: man:systemd-modules-load.service(8)
man:modules-load.d(5)
Process: 1612 ExecStart=/usr/lib/systemd/systemd-modules-load (code=exited, status=1/FAILURE)
CGroup: name=systemd:/system/systemd-modules-load.service
Sep 19 17:28:03 localhost.localdomain systemd-modules-load[1612]: [48B blob data]
Sep 19 17:28:03 localhost.localdomain systemd-modules-load[1612]: Failed to insert 'apm': Function not implemented
--------- shell ----------
I don't know if the service (systemd-modules-load) is still loading the rest of modules after the error has happened, since the only module (file) I see in my "/etc/modules-load.d/" directory is "apmd.conf".
Perhaps the bug should be asigned to "apmd" component instead of "systemd" component, since the error is caused by a wrong function call at "/etc/modules-load.d/apmd.conf" file, which belongs to "apmd" rpm package.
Probably the worst part of this bug is the boot line with a red warning ("FAILED"):
--------- boot ----------
[ OK ] Reached target Local File Systems (Pre).
Starting Load Random Seed...
[FAILED] Failed to start Load Kernel Modules.
See 'systemctl status systemd-modules-load.service' for details.
Mounting Configuration File System...
--------- boot ----------
OK, closing then. systemd-44-20.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/systemd-44-20.fc17 |