From 444869d2522f6fce90c03d02a907ddb46cd462d5 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Mon, 22 Mar 2010 20:11:53 -0400 Subject: [PATCH] --- yaml --- r: 197944 b: refs/heads/master c: e7fe0585ca8793e2d43c57e77d4ca79042806acf h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/super.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 8d9caecf0c9b..a72b1a3152a5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6754af64641e8224c281ee5714e012e3ed41f701 +refs/heads/master: e7fe0585ca8793e2d43c57e77d4ca79042806acf diff --git a/trunk/fs/super.c b/trunk/fs/super.c index ccb2b5fa89bd..4df8233dfb61 100644 --- a/trunk/fs/super.c +++ b/trunk/fs/super.c @@ -602,10 +602,10 @@ int do_remount_sb(struct super_block *sb, int flags, void *data, int force) static void do_emergency_remount(struct work_struct *work) { - struct super_block *sb; + struct super_block *sb, *n; spin_lock(&sb_lock); - list_for_each_entry(sb, &super_blocks, s_list) { + list_for_each_entry_safe(sb, n, &super_blocks, s_list) { if (list_empty(&sb->s_instances)) continue; sb->s_count++; @@ -618,8 +618,8 @@ static void do_emergency_remount(struct work_struct *work) do_remount_sb(sb, MS_RDONLY, NULL, 1); } up_write(&sb->s_umount); - put_super(sb); spin_lock(&sb_lock); + __put_super(sb); } spin_unlock(&sb_lock); kfree(work);