Hi, Ian, list,

The patch is pretty self-explanatory.  Comments are welcome, as always.
I sent this a while back, too.  I have not re-tested it since then.

-Jeff


diff --git a/modules/mount_ext2.c b/modules/mount_ext2.c
index b2efb96..a7f008f 100644
--- a/modules/mount_ext2.c
+++ b/modules/mount_ext2.c
@@ -99,7 +99,13 @@ #endif
                err = spawnl(LOG_DEBUG, fsck_prog, fsck_prog, "-p", what, NULL);
        }
 
-       if (err & ~6) {
+       /*
+        * spawnl returns the error code, left shifted by 8 bits.  We are
+        * interested in the following error bits from the fsck program:
+        *    2 - File system errors corrected, system should be rebooted
+        *    4 - File system errors left uncorrected
+        */
+       if ((err >> 8) & 6) {
                error(MODPREFIX "%s: filesystem needs repair, won't mount",
                      what);
                return 1;

_______________________________________________
autofs mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/autofs

Reply via email to