diff options
author | Naohiro Aota <naohiro.aota@wdc.com> | 2021-07-21 21:43:34 +0900 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2021-08-23 13:19:08 +0200 |
commit | 42b5d73b5d231bbe38639c6dec913505d7f55372 (patch) | |
tree | 97dd6485049901a932875afbcf6a7c16061eea51 /fs/btrfs/delalloc-space.h | |
parent | 21dda654d4808833668b380e5f0b9befff8640ae (diff) |
btrfs: drop unnecessary ASSERT from btrfs_submit_direct()
When on SINGLE block group, btrfs_get_io_geometry() will return "the
size of the block group - the offset of the logical address within the
block group" as geom.len. Since we allow up to 8 GiB zone size on zoned
filesystem, we can have up to 8 GiB block group, so can have up to 8 GiB
geom.len as well. With this setup, we easily hit the "ASSERT(geom.len <=
INT_MAX);".
The ASSERT looks like to guard btrfs_bio_clone_partial() and bio_trim()
which both take "int" (now u64 due to the previous patch). So to be
precise the ASSERT should check if clone_len <= UINT_MAX. But actually,
clone_len is already capped by bio.bi_iter.bi_size which is unsigned
int. So the ASSERT is not necessary.
Drop the ASSERT and properly compare submit_len and geom.len in u64.
Then, let the implicit casting to convert it to u64.
Signed-off-by: Naohiro Aota <naohiro.aota@wdc.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/delalloc-space.h')
0 files changed, 0 insertions, 0 deletions