From 7fa7dd3cc3301dbc945e832bacf839db06d6db7b Mon Sep 17 00:00:00 2001 From: Tao Ma Date: Sun, 10 Jul 2011 23:52:37 -0400 Subject: [PATCH] --- yaml --- r: 262094 b: refs/heads/master c: 22f10457432387615fa1ae6e0375d9cacc50819b h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/ext4/mballoc.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 891118f353fb..ad483d4a2aa7 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 12706394bcaa48e3d5e19c97d7b4e5683ebb12fb +refs/heads/master: 22f10457432387615fa1ae6e0375d9cacc50819b diff --git a/trunk/fs/ext4/mballoc.c b/trunk/fs/ext4/mballoc.c index 1900ec7a1579..b189cb4ff20f 100644 --- a/trunk/fs/ext4/mballoc.c +++ b/trunk/fs/ext4/mballoc.c @@ -4902,6 +4902,8 @@ int ext4_trim_fs(struct super_block *sb, struct fstrim_range *range) if (unlikely(minlen > EXT4_BLOCKS_PER_GROUP(sb))) return -EINVAL; + if (start + len <= first_data_blk) + goto out; if (start < first_data_blk) { len -= first_data_blk - start; start = first_data_blk; @@ -4950,5 +4952,6 @@ int ext4_trim_fs(struct super_block *sb, struct fstrim_range *range) } range->len = trimmed * sb->s_blocksize; +out: return ret; }