diff options
author | Tiger Yang <tiger.yang@oracle.com> | 2011-05-28 00:34:19 +0800 |
---|---|---|
committer | Joel Becker <jlbec@evilplan.org> | 2011-05-31 19:03:44 -0700 |
commit | 03efed8a2a1b8e00164eb4720a82a7dd5e368a8e (patch) | |
tree | efe713ba18680a1ccedecfbff2d81d83f048fdb0 /fs/ocfs2/super.c | |
parent | e12ca23d41bd157354a5d1aadff30211a410c53a (diff) |
ocfs2: Bugfix for hard readonly mount
ocfs2 cannot currently mount a device that is readonly at the media
("hard readonly"). Fix the broken places.
see detail: http://oss.oracle.com/bugzilla/show_bug.cgi?id=1322
[ Description edited -- Joel ]
Signed-off-by: Tiger Yang <tiger.yang@oracle.com>
Reviewed-by: Sunil Mushran <sunil.mushran@oracle.com>
Signed-off-by: Joel Becker <jlbec@evilplan.org>
Diffstat (limited to 'fs/ocfs2/super.c')
-rw-r--r-- | fs/ocfs2/super.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c index cdbaf5e9730..029c4cd8a69 100644 --- a/fs/ocfs2/super.c +++ b/fs/ocfs2/super.c @@ -1974,7 +1974,8 @@ static void ocfs2_dismount_volume(struct super_block *sb, int mnt_err) * If we failed before we got a uuid_str yet, we can't stop * heartbeat. Otherwise, do it. */ - if (!mnt_err && !ocfs2_mount_local(osb) && osb->uuid_str) + if (!mnt_err && !ocfs2_mount_local(osb) && osb->uuid_str && + !ocfs2_is_hard_readonly(osb)) hangup_needed = 1; if (osb->cconn) |