aboutsummaryrefslogtreecommitdiffstats
path: root/fs/jfs/super.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/jfs/super.c')
-rw-r--r--fs/jfs/super.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/fs/jfs/super.c b/fs/jfs/super.c
index b66832ac33ac..5329d66a9704 100644
--- a/fs/jfs/super.c
+++ b/fs/jfs/super.c
@@ -396,10 +396,20 @@ static int jfs_remount(struct super_block *sb, int *flags, char *data)
396 396
397 JFS_SBI(sb)->flag = flag; 397 JFS_SBI(sb)->flag = flag;
398 ret = jfs_mount_rw(sb, 1); 398 ret = jfs_mount_rw(sb, 1);
399
400 /* mark the fs r/w for quota activity */
401 sb->s_flags &= ~MS_RDONLY;
402
399 unlock_kernel(); 403 unlock_kernel();
404 vfs_dq_quota_on_remount(sb);
400 return ret; 405 return ret;
401 } 406 }
402 if ((!(sb->s_flags & MS_RDONLY)) && (*flags & MS_RDONLY)) { 407 if ((!(sb->s_flags & MS_RDONLY)) && (*flags & MS_RDONLY)) {
408 rc = vfs_dq_off(sb, 1);
409 if (rc < 0 && rc != -ENOSYS) {
410 unlock_kernel();
411 return -EBUSY;
412 }
403 rc = jfs_umount_rw(sb); 413 rc = jfs_umount_rw(sb);
404 JFS_SBI(sb)->flag = flag; 414 JFS_SBI(sb)->flag = flag;
405 unlock_kernel(); 415 unlock_kernel();