The function bio_trim has offset and size arguments that are declared as
int. But it actually expects sector value and the range of int is not
enough for bio->bi_iter.bi_size and bio_advance() which is/takes unsigned
int. So, let's fix the argument type of bio_trim() and its callers.
Patches 1 and 2 fix bio_trim() argument and its caller's argument.
Patch 3 is depending on patch 1 and 2 and do some cleanup for btrfs.
Changes:
- v3:
- Introduce BIO_MAX_SECTORS instead of a function local const
- Some style fix
- v2:
- Add WARN_ON and ASSERT to catch overflow values
- Change argument type of btrfs_bio_clone_partial() to u64
Chaitanya Kulkarni (2):
block: fix arg type of bio_trim()
btrfs: fix argument type of btrfs_bio_clone_partial()
Naohiro Aota (1):
btrfs: drop unnecessary ASSERT from btrfs_submit_direct()
block/bio.c | 12 +++++++-----
fs/btrfs/extent_io.c | 4 +++-
fs/btrfs/extent_io.h | 2 +-
fs/btrfs/inode.c | 8 ++++----
include/linux/bio.h | 2 +-
include/linux/blk_types.h | 1 +
6 files changed, 17 insertions(+), 12 deletions(-)
--
2.32.0