[systemd-commits] src/automount.c

Lennart Poettering lennart at kemper.freedesktop.org
Wed May 19 13:30:36 PDT 2010


 src/automount.c |   14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

New commits:
commit ca9a0317a45f8a4ab702e9b8ce4542d8452a47ad
Author: Lennart Poettering <lennart at poettering.net>
Date:   Wed May 19 22:30:28 2010 +0200

    automount: try to modprobe autofs4 if its lacking

diff --git a/src/automount.c b/src/automount.c
index 3268046..730b157 100644
--- a/src/automount.c
+++ b/src/automount.c
@@ -276,8 +276,18 @@ static int open_dev_autofs(Manager *m) {
                 return m->dev_autofs_fd;
 
         if ((m->dev_autofs_fd = open("/dev/autofs", O_CLOEXEC|O_RDONLY)) < 0) {
-                log_error("Failed to open /dev/autofs: %s", strerror(errno));
-                return -errno;
+
+                if (errno == ENOENT || errno == ENODEV) {
+                        log_error("Your kernel apparently lacks built-in autofs4 support. Please fix that. "
+                                  "We'll now try to work around this by calling 'modprobe autofs4'...");
+                        system("/sbin/modprobe -q -- autofs4");
+                        m->dev_autofs_fd = open("/dev/autofs", O_CLOEXEC|O_RDONLY);
+                }
+
+                if (m->dev_autofs_fd < 0) {
+                        log_error("Failed to open /dev/autofs: %s", strerror(errno));
+                        return -errno;
+                }
         }
 
         init_autofs_dev_ioctl(&param);


More information about the systemd-commits mailing list