Message ID | 20201127012945.410-1-charley.ashbringer@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | block: fix a unsigned integer overflow which could bypass check | expand |
diff --git a/block/ioctl.c b/block/ioctl.c index 3fbc382eb926..3fddb1fe5b35 100644 --- a/block/ioctl.c +++ b/block/ioctl.c @@ -133,6 +133,8 @@ static int blk_ioctl_discard(struct block_device *bdev, fmode_t mode, if (start + len > i_size_read(bdev->bd_inode)) return -EINVAL; + if (start + len < start) + return -EINVAL; err = truncate_bdev_range(bdev, mode, start, start + len - 1); if (err)