summaryrefslogtreecommitdiffstats
path: root/fs/ext4/super.c
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2013-02-03 05:14:31 +0100
committerTheodore Ts'o <tytso@mit.edu>2013-02-03 05:14:31 +0100
commite33e60eaed5353c9e6863124ad1081a38640db4b (patch)
tree1217e3b4e4a53c8343a17b61c1aa337a781a64c8 /fs/ext4/super.c
parentext4: make mount option parsing loop more logical (diff)
downloadlinux-e33e60eaed5353c9e6863124ad1081a38640db4b.tar.xz
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 '')
-rw-r--r--fs/ext4/super.c9
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;