diff options
author | Jan Kara <jack@suse.cz> | 2013-02-02 23:14:31 -0500 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2013-02-02 23:14:31 -0500 |
commit | e33e60eaed5353c9e6863124ad1081a38640db4b (patch) | |
tree | 1217e3b4e4a53c8343a17b61c1aa337a781a64c8 /fs/ext4/super.c | |
parent | 5f3633e36b8a67c02d2d10cde5f056f9e5da49a1 (diff) | |
download | blackbird-obmc-linux-e33e60eaed5353c9e6863124ad1081a38640db4b.tar.gz blackbird-obmc-linux-e33e60eaed5353c9e6863124ad1081a38640db4b.zip |
ext4: print error when argument of inode_readahead_blk is invalid
If argument of inode_readahead_blk is too big, we just bail out
without printing any error. Fix this since it could confuse users.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/super.c')
-rw-r--r-- | fs/ext4/super.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 9b36c11baad9..b68f4b671bc7 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -1555,11 +1555,10 @@ static int handle_mount_opt(struct super_block *sb, char *opt, int token, } else if (token == Opt_min_batch_time) { sbi->s_min_batch_time = arg; } else if (token == Opt_inode_readahead_blks) { - if (arg > (1 << 30)) - return -1; - if (arg && !is_power_of_2(arg)) { - ext4_msg(sb, KERN_ERR, "EXT4-fs: inode_readahead_blks" - " must be a power of 2"); + if (arg && (arg > (1 << 30) || !is_power_of_2(arg))) { + ext4_msg(sb, KERN_ERR, + "EXT4-fs: inode_readahead_blks must be " + "0 or a power of 2 smaller than 2^31"); return -1; } sbi->s_inode_readahead_blks = arg; |