]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
ocfs2: __ocfs2_abort() should not enable panic for local mounts
authorSunil Mushran <sunil.mushran@oracle.com>
Wed, 19 Aug 2009 22:16:01 +0000 (15:16 -0700)
committerJoel Becker <joel.becker@oracle.com>
Wed, 23 Sep 2009 08:54:46 +0000 (01:54 -0700)
In a clustered setup, we have to panic the box on journal abort. This is
because we don't have the facility to go hard readonly. With hard ro, another
node would detect node failure and initiate recovery.

Having said that, we shouldn't force panic if the volume is mounted locally.
This patch defers the handling to the mount option, errors.

Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com>
Signed-off-by: Joel Becker <joel.becker@oracle.com>
fs/ocfs2/super.c

index 8b6062176970e03c2a9443c5e521a829ce0289e4..154e62522b0595b1eb859ce90a11c7c2a58e0c11 100644 (file)
@@ -2494,7 +2494,8 @@ void __ocfs2_abort(struct super_block* sb,
        /* Force a panic(). This stinks, but it's better than letting
         * things continue without having a proper hard readonly
         * here. */
-       OCFS2_SB(sb)->s_mount_opt |= OCFS2_MOUNT_ERRORS_PANIC;
+       if (!ocfs2_mount_local(OCFS2_SB(sb)))
+               OCFS2_SB(sb)->s_mount_opt |= OCFS2_MOUNT_ERRORS_PANIC;
        ocfs2_handle_error(sb);
 }