[PATCH 0/5] Validate logical block size in blk_validate_limits()
From: John Garry
Date: Fri Jul 05 2024 - 07:52:29 EST
This series adds validation of the logical block size in
blk_validate_limits().
Some drivers had already been validating this themselves. As such, we can
mostly drop that driver validation.
nbd is problematic, as we cannot only change to just stop calling
blk_validate_limits(). This is because the LBS is updated in a 2-stage
process:
a. update block size in the driver and validate
b. update queue limits
So if we stop validating the limits in a., there is a user-visible change
in behaviour (as we stop rejecting invalid limits from the NBD_SET_BLKSIZE
ioctl). So I left that untouched.
This topic was originally mentioned in [0] and then again in [1] by
Keith.
I have also included a related virtio_blk change to deal with
blk_size config fallback.
[0] https://lore.kernel.org/linux-block/10b3e3fe-6ad5-4e0e-b822-f51656c976ee@xxxxxxxxxx/
[1] https://lore.kernel.org/linux-block/Zl4dxaQgPbw19Irk@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/
John Garry (5):
virtio_blk: Fix default logical block size fallback
block: Validate logical block size in blk_validate_limits()
null_blk: Don't bother validating blocksize
virtio_blk: Don't bother validating blocksize
loop: Don't bother validating blocksize
block/blk-settings.c | 2 ++
drivers/block/loop.c | 12 +-----------
drivers/block/null_blk/main.c | 3 ---
drivers/block/virtio_blk.c | 31 +++++++++++--------------------
include/linux/blkdev.h | 1 +
5 files changed, 15 insertions(+), 34 deletions(-)
--
2.31.1