Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4b44dd30 authored by Tao Ma's avatar Tao Ma Committed by Jan Kara
Browse files

ext3: Adjust trim start with first_data_block.

As we have make the consense in the e-mail[1], the trim start should
be added with first_data_block. So this patch fulfill it and remove
the check for start < first_data_block.

[1] http://www.spinics.net/lists/linux-ext4/msg22737.html



Cc: Jan Kara <jack@suse.cz>
Cc: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: default avatarTao Ma <boyu.mt@taobao.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent 7a39de15
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -2090,7 +2090,8 @@ int ext3_trim_fs(struct super_block *sb, struct fstrim_range *range)
	ext3_fsblk_t max_blks = le32_to_cpu(es->s_blocks_count);
	int ret = 0;

	start = range->start >> sb->s_blocksize_bits;
	start = (range->start >> sb->s_blocksize_bits) +
		le32_to_cpu(es->s_first_data_block);
	len = range->len >> sb->s_blocksize_bits;
	minlen = range->minlen >> sb->s_blocksize_bits;
	trimmed = 0;
@@ -2099,10 +2100,6 @@ int ext3_trim_fs(struct super_block *sb, struct fstrim_range *range)
		return -EINVAL;
	if (start >= max_blks)
		goto out;
	if (start < le32_to_cpu(es->s_first_data_block)) {
		len -= le32_to_cpu(es->s_first_data_block) - start;
		start = le32_to_cpu(es->s_first_data_block);
	}
	if (start + len > max_blks)
		len = max_blks - start;