diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2010-09-27 15:58:11 +0100 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2010-09-27 15:58:11 +0100 |
commit | d0795f912318f65b800c6b619d749c3bf7c930fb (patch) | |
tree | c3d13ab5e4864306cc215d4dd6b6cecb1e33d77b /fs/gfs2/recovery.c | |
parent | c80dbb58f9c3f84372e37dfe80b41810052ad62f (diff) | |
download | linux-d0795f912318f65b800c6b619d749c3bf7c930fb.tar.gz linux-d0795f912318f65b800c6b619d749c3bf7c930fb.tar.bz2 linux-d0795f912318f65b800c6b619d749c3bf7c930fb.zip |
GFS2: Fix journal check for spectator mounts
When checking journals for spectator mounts, we cannot rely on the
journal being locked, whatever its jid might be. This patch
ensures that we always get the journal locks when checking
journals for a spectator mount.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/recovery.c')
-rw-r--r-- | fs/gfs2/recovery.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/gfs2/recovery.c b/fs/gfs2/recovery.c index f7f89a94a5a4..666548e14596 100644 --- a/fs/gfs2/recovery.c +++ b/fs/gfs2/recovery.c @@ -456,7 +456,8 @@ void gfs2_recover_func(struct work_struct *work) unsigned int pass; int error; - if (jd->jd_jid != sdp->sd_lockstruct.ls_jid) { + if (sdp->sd_args.ar_spectator || + (jd->jd_jid != sdp->sd_lockstruct.ls_jid)) { fs_info(sdp, "jid=%u: Trying to acquire journal lock...\n", jd->jd_jid); |