chiark / gitweb /
fsck: re-enable fsck -l
authorKarel Zak <kzak@redhat.com>
Wed, 22 Oct 2014 08:28:42 +0000 (10:28 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 22 Oct 2014 09:45:36 +0000 (11:45 +0200)
The -l (lock) has been temporary disabled due to conflict with
udev (https://bugs.freedesktop.org/show_bug.cgi?id=79576)

The problem is fixed since util-linux v2.25 (Jul 2014).

README
src/fsck/fsck.c

diff --git a/README b/README
index e0edd41f176db91165047e107c2b0a0db0de4cc3..8f7a96e55e3c3e52ec075f1e05ab66ec81388829 100644 (file)
--- a/README
+++ b/README
@@ -129,8 +129,9 @@ REQUIREMENTS:
         During runtime, you need the following additional
         dependencies:
 
-        util-linux >= v2.19 (requires fsck -l, agetty -s),
+        util-linux >= v2.19 required for agetty -s
                       v2.21 required for tests in test/
+                      v2.25 required for fsck -l
         dbus >= 1.4.0 (strictly speaking optional, but recommended)
         sulogin (from util-linux >= 2.22 or sysvinit-tools, optional but recommended,
                  required for tests in test/)
index dfe97bc260a031885b48202772563edcdf86ad80..70a591883e70cc161165077fba3674e12c5960eb 100644 (file)
@@ -320,16 +320,11 @@ int main(int argc, char *argv[]) {
         cmdline[i++] = "-T";
 
         /*
-         * Disable locking which conflict with udev's event
-         * ownershipi, until util-linux moves the flock
-         * synchronization file which prevents multiple fsck running
-         * on the same rotationg media, from the disk device
-         * node to a privately owned regular file.
-         *
-         * https://bugs.freedesktop.org/show_bug.cgi?id=79576#c5
-         *
-         * cmdline[i++] = "-l";
+         * Since util-linux v2.25 fsck uses /run/fsck/<diskname>.lock files.
+         * The previous versions use flock for the device and conflict with
+         * udevd, see https://bugs.freedesktop.org/show_bug.cgi?id=79576#c5
          */
+        cmdline[i++] = "-l";
 
         if (!root_directory)
                 cmdline[i++] = "-M";