]> Git Repo - linux.git/commitdiff
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
authorLinus Torvalds <[email protected]>
Wed, 17 Oct 2012 01:12:38 +0000 (18:12 -0700)
committerLinus Torvalds <[email protected]>
Wed, 17 Oct 2012 01:12:38 +0000 (18:12 -0700)
Pull ext2, ext3, quota fixes from Jan Kara:
 "Fix three regressions caused by user namespace conversions (ext2,
  ext3, quota) and minor ext3 fix and cleanup."

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
  quota: Silence warning about PRJQUOTA not being handled in need_print_warning()
  ext3: fix return values on parse_options() failure
  ext2: fix return values on parse_options() failure
  ext3: ext3_bread usage audit
  ext3: fix possible non-initialized variable on htree_dirblock_to_tree()

1  2 
fs/ext3/super.c

diff --combined fs/ext3/super.c
index 29e79713c7eb6ccd37eac31c20c02fb5fd826744,ebf8312c3a4e4fec8f3143284fa9438db19af082..5366393528dfbd622120549729cf22a891026f44
@@@ -1001,7 -1001,7 +1001,7 @@@ static int parse_options (char *options
                        uid = make_kuid(current_user_ns(), option);
                        if (!uid_valid(uid)) {
                                ext3_msg(sb, KERN_ERR, "Invalid uid value %d", option);
-                               return -1;
+                               return 0;
  
                        }
                        sbi->s_resuid = uid;
                        gid = make_kgid(current_user_ns(), option);
                        if (!gid_valid(gid)) {
                                ext3_msg(sb, KERN_ERR, "Invalid gid value %d", option);
-                               return -1;
+                               return 0;
                        }
                        sbi->s_resgid = gid;
                        break;
@@@ -2578,9 -2578,11 +2578,9 @@@ out
  static int ext3_unfreeze(struct super_block *sb)
  {
        if (!(sb->s_flags & MS_RDONLY)) {
 -              lock_super(sb);
                /* Reser the needs_recovery flag before the fs is unlocked. */
                EXT3_SET_INCOMPAT_FEATURE(sb, EXT3_FEATURE_INCOMPAT_RECOVER);
                ext3_commit_super(sb, EXT3_SB(sb)->s_es, 1);
 -              unlock_super(sb);
                journal_unlock_updates(EXT3_SB(sb)->s_journal);
        }
        return 0;
@@@ -2600,6 -2602,7 +2600,6 @@@ static int ext3_remount (struct super_b
  #endif
  
        /* Store the original options */
 -      lock_super(sb);
        old_sb_flags = sb->s_flags;
        old_opts.s_mount_opt = sbi->s_mount_opt;
        old_opts.s_resuid = sbi->s_resuid;
                    old_opts.s_qf_names[i] != sbi->s_qf_names[i])
                        kfree(old_opts.s_qf_names[i]);
  #endif
 -      unlock_super(sb);
 -
        if (enable_quota)
                dquot_resume(sb, -1);
        return 0;
@@@ -2723,6 -2728,7 +2723,6 @@@ restore_opts
                sbi->s_qf_names[i] = old_opts.s_qf_names[i];
        }
  #endif
 -      unlock_super(sb);
        return err;
  }
  
This page took 0.070608 seconds and 4 git commands to generate.