[00/10] RFC: move logical block size checking to the block core
mbox series

Message ID 20200721105239.8270-1-mlevitsk@redhat.com
Headers show
Series
  • RFC: move logical block size checking to the block core
Related show

Message

Maxim Levitsky July 21, 2020, 10:52 a.m. UTC
This patch series aims to move the logical block size checking to the
block code.

This was inspired by missing check for valid logical block size in
virtio-blk which causes the kernel to crash in a weird way later on
when it is invalid.

I added blk_is_valid_logical_block_size which returns true iff the
block size is one of supported sizes.

I added this check to virtio-blk, and also converted  few block drivers
that I am familiar with to use this interface instead of their
own implementation.

Best regards,
	Maxim Levitsky

Maxim Levitsky (10):
  block: introduce blk_is_valid_logical_block_size
  block: virtio-blk: check logical block size
  block: loop: use blk_is_valid_logical_block_size
  block: nbd: use blk_is_valid_logical_block_size
  block: null: use blk_is_valid_logical_block_size
  block: ms_block: use blk_is_valid_logical_block_size
  block: mspro_blk: use blk_is_valid_logical_block_size
  block: nvme: use blk_is_valid_logical_block_size
  block: scsi: sd: use blk_is_valid_logical_block_size
  block: scsi: sr: use blk_is_valid_logical_block_size

 block/blk-settings.c                | 18 +++++++++++++++++
 drivers/block/loop.c                | 23 +++++----------------
 drivers/block/nbd.c                 | 12 ++---------
 drivers/block/null_blk_main.c       |  6 +++---
 drivers/block/virtio_blk.c          | 15 ++++++++++++--
 drivers/memstick/core/ms_block.c    |  2 +-
 drivers/memstick/core/mspro_block.c |  6 ++++++
 drivers/nvme/host/core.c            | 17 ++++++++--------
 drivers/scsi/sd.c                   |  5 +----
 drivers/scsi/sr.c                   | 31 ++++++++++++-----------------
 include/linux/blkdev.h              |  1 +
 11 files changed, 71 insertions(+), 65 deletions(-)