diff options
author | Lukas Czerner <lczerner@redhat.com> | 2012-03-22 02:24:22 +0100 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2012-03-22 02:24:22 +0100 |
commit | 21e7fd22a5a0ca83befe12c58cced21975dab213 (patch) | |
tree | bb11f7073ad3984e0ab775fc4800f5ee05864623 /fs/ext4 | |
parent | ext4: fix start and len arguments handling in ext4_trim_fs() (diff) | |
download | linux-21e7fd22a5a0ca83befe12c58cced21975dab213.tar.xz linux-21e7fd22a5a0ca83befe12c58cced21975dab213.zip |
ext4: fix trimmed block count accunting
Currently when there is not enough free blocks in the block group to
discard (grp->bb_free < minlen) the 'trimmed' is bumped up anyway with
the number of discarded blocks from the previous iteration. Fix this
by bumping up 'trimmed' only if the ext4_trim_all_free() was actually
run.
Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/mballoc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c index 7d5a1e3a703a..c8b6a8808166 100644 --- a/fs/ext4/mballoc.c +++ b/fs/ext4/mballoc.c @@ -5026,8 +5026,8 @@ int ext4_trim_fs(struct super_block *sb, struct fstrim_range *range) ret = cnt; break; } + trimmed += cnt; } - trimmed += cnt; /* * For every group except the first one, we are sure |