[PATCH 2/2] fs: print a message when freezing/unfreezing filesystems

From: Mateusz Guzik
Date: Tue May 13 2014 - 14:31:35 EST


This helps hang troubleshooting efforts when only dmesg is available.

Signed-off-by: Mateusz Guzik <mguzik@xxxxxxxxxx>
Cc: linux-fsdevel@xxxxxxxxxxxxxxx
Cc: Josef Bacik <jbacik@xxxxxx>
Cc: Jan Kara <jack@xxxxxxx>
Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
Cc: Eric Sandeen <esandeen@xxxxxxxxxx>

---
fs/super.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/fs/super.c b/fs/super.c
index 017e10a..581c008 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -1289,12 +1289,9 @@ int freeze_super(struct super_block *sb)
return 0; /* sic - it's "nothing to do" */
}

- if (sb->s_flags & MS_RDONLY) {
+ if (sb->s_flags & MS_RDONLY)
/* Nothing to do really... */
- sb->s_writers.frozen = SB_FREEZE_COMPLETE;
- up_write(&sb->s_umount);
- return 0;
- }
+ goto out;

/* From now on, no new normal writers can start */
sb->s_writers.frozen = SB_FREEZE_WRITE;
@@ -1335,8 +1332,10 @@ int freeze_super(struct super_block *sb)
* This is just for debugging purposes so that fs can warn if it
* sees write activity when frozen is set to SB_FREEZE_COMPLETE.
*/
+out:
sb->s_writers.frozen = SB_FREEZE_COMPLETE;
up_write(&sb->s_umount);
+ pr_info("VFS:Filesystem %s thawed\n", sb->s_id);
return 0;
}
EXPORT_SYMBOL(freeze_super);
@@ -1374,7 +1373,7 @@ out:
smp_wmb();
wake_up(&sb->s_writers.wait_unfrozen);
deactivate_locked_super(sb);
-
+ pr_info("VFS:Filesystem %s thawed\n", sb->s_id);
return 0;
}
EXPORT_SYMBOL(thaw_super);
--
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/