btrfs: don't warn if discard range is not aligned to sector
commit a208b3f132b48e1f94f620024e66fea635925877 upstream.
There's a warning in btrfs_issue_discard() when the range is not aligned
to 512 bytes, originally added in 4d89d377bb
("btrfs:
btrfs_issue_discard ensure offset/length are aligned to sector
boundaries"). We can't do sub-sector writes anyway so the adjustment is
the only thing that we can do and the warning is unnecessary.
CC: stable@vger.kernel.org # 4.19+
Reported-by: syzbot+4a4f1eba14eb5c3417d1@syzkaller.appspotmail.com
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
f8a7a51a6c
commit
f27937426b
@@ -1202,7 +1202,8 @@ static int btrfs_issue_discard(struct block_device *bdev, u64 start, u64 len,
|
|||||||
u64 bytes_left, end;
|
u64 bytes_left, end;
|
||||||
u64 aligned_start = ALIGN(start, 1 << 9);
|
u64 aligned_start = ALIGN(start, 1 << 9);
|
||||||
|
|
||||||
if (WARN_ON(start != aligned_start)) {
|
/* Adjust the range to be aligned to 512B sectors if necessary. */
|
||||||
|
if (start != aligned_start) {
|
||||||
len -= aligned_start - start;
|
len -= aligned_start - start;
|
||||||
len = round_down(len, 1 << 9);
|
len = round_down(len, 1 << 9);
|
||||||
start = aligned_start;
|
start = aligned_start;
|
||||||
|
Reference in New Issue
Block a user