diff options
Diffstat (limited to 'fs/ext3/balloc.c')
| -rw-r--r-- | fs/ext3/balloc.c | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/fs/ext3/balloc.c b/fs/ext3/balloc.c index 7320a66e958f..22548f56197b 100644 --- a/fs/ext3/balloc.c +++ b/fs/ext3/balloc.c @@ -2101,8 +2101,9 @@ int ext3_trim_fs(struct super_block *sb, struct fstrim_range *range)  	end = start + (range->len >> sb->s_blocksize_bits) - 1;  	minlen = range->minlen >> sb->s_blocksize_bits; -	if (unlikely(minlen > EXT3_BLOCKS_PER_GROUP(sb)) || -	    unlikely(start >= max_blks)) +	if (minlen > EXT3_BLOCKS_PER_GROUP(sb) || +	    start >= max_blks || +	    range->len < sb->s_blocksize)  		return -EINVAL;  	if (end >= max_blks)  		end = max_blks - 1; | 
