From 1ee9a994d7c3f2397bdfa32fa6e3c6a5d1710746 Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Thu, 6 May 2010 11:03:29 +0100 Subject: [PATCH] --- yaml --- r: 196001 b: refs/heads/master c: 913a71d250803130eac523e7a2b6439e31a0bc83 h: refs/heads/master i: 195999: 164487ba96a672b94b8d168a9feaaab527d9c1c1 v: v3 --- [refs] | 2 +- trunk/fs/gfs2/incore.h | 1 + trunk/fs/gfs2/log.c | 1 + trunk/fs/gfs2/super.c | 3 ++- trunk/fs/gfs2/sys.c | 2 ++ 5 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 32d167d5797c..36c72e4943fd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ad6bb90f3401556469489f237cb08626d88703d2 +refs/heads/master: 913a71d250803130eac523e7a2b6439e31a0bc83 diff --git a/trunk/fs/gfs2/incore.h b/trunk/fs/gfs2/incore.h index 08dd65745473..b5d7363b22da 100644 --- a/trunk/fs/gfs2/incore.h +++ b/trunk/fs/gfs2/incore.h @@ -459,6 +459,7 @@ enum { SDF_SHUTDOWN = 2, SDF_NOBARRIERS = 3, SDF_NORECOVERY = 4, + SDF_DEMOTE = 5, }; #define GFS2_FSNAME_LEN 256 diff --git a/trunk/fs/gfs2/log.c b/trunk/fs/gfs2/log.c index d5959df6deb2..b593f0e28f25 100644 --- a/trunk/fs/gfs2/log.c +++ b/trunk/fs/gfs2/log.c @@ -600,6 +600,7 @@ static void log_write_header(struct gfs2_sbd *sdp, u32 flags, int pull) if (buffer_eopnotsupp(bh)) { clear_buffer_eopnotsupp(bh); set_buffer_uptodate(bh); + fs_info(sdp, "barrier sync failed - disabling barriers\n"); set_bit(SDF_NOBARRIERS, &sdp->sd_flags); lock_buffer(bh); skip_barrier: diff --git a/trunk/fs/gfs2/super.c b/trunk/fs/gfs2/super.c index 7a93e9ff7d3c..4d1aad38f1b1 100644 --- a/trunk/fs/gfs2/super.c +++ b/trunk/fs/gfs2/super.c @@ -1334,7 +1334,8 @@ static int gfs2_show_options(struct seq_file *s, struct vfsmount *mnt) } if (test_bit(SDF_NOBARRIERS, &sdp->sd_flags)) seq_printf(s, ",nobarrier"); - + if (test_bit(SDF_DEMOTE, &sdp->sd_flags)) + seq_printf(s, ",demote_interface_used"); return 0; } diff --git a/trunk/fs/gfs2/sys.c b/trunk/fs/gfs2/sys.c index 2ac845d9c46c..7afb62ec97cf 100644 --- a/trunk/fs/gfs2/sys.c +++ b/trunk/fs/gfs2/sys.c @@ -233,6 +233,8 @@ static ssize_t demote_rq_store(struct gfs2_sbd *sdp, const char *buf, size_t len glops = gfs2_glops_list[gltype]; if (glops == NULL) return -EINVAL; + if (test_and_set_bit(SDF_DEMOTE, &sdp->sd_flags)) + fs_info(sdp, "demote interface used\n"); rv = gfs2_glock_get(sdp, glnum, glops, 0, &gl); if (rv) return rv;