[PATCH v2 0/8] enable bs > ps for block devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This v2 addresses feedback from the first RFC on enabling bs > ps for
block devices [0] after which I split the async read buffer-head work
into its own series [1]. This unifies the series now that this the
buffer-head work is greatly simplified, and generalizing a block size
check is now merged upstream on v6.14-rc1.

Changes in this series:

 - Simplify block_read_full_folio() with bh_offset() and moves this
   as a first patch
 - Re-orders the negative shift patch to go first as otherwise
   the blocks_per_folio changes don't make any sense
 - Simplifies the amount of changes in the patch
   "enable large folio support for large logical block sizes" as most
   of the required changes are now upstream
 - Drops the NVMe patch as its no longer needed
 - Keeps the nrpages to 1 for readahead for folio for buffer-heads
   as suggested by Matthew
 - Takes the suggested approach by Matthew Wilcox on async read by
   replacing the batched read with a straight forward iteration
 - Tons of cosmetic updates as requested by folks
 - Rebases on top of v6.14-rc1
 - Tested with both fstests on ext4 and blktests using the latest
   changes posted to support bs > ps for block devices just now [2]
 - Updates the rationale for why we use 64k as the current limit:
   test and validation

If you want this on a tree, this is available on the kdevops linux
large-block-buffer-heads-for-next branch [3].

[0] https://lkml.kernel.org/r/20241113094727.1497722-1-mcgrof@xxxxxxxxxx
[1] https://lkml.kernel.org/r/20241218022626.3668119-1-mcgrof@xxxxxxxxxx
[2] https://lkml.kernel.org/r/20250204225729.422949-1-mcgrof@xxxxxxxxxx
[3] https://github.com/linux-kdevops/linux/tree/large-block-buffer-heads-for-next

Hannes Reinecke (3):
  fs/mpage: avoid negative shift for large blocksize
  fs/mpage: use blocks_per_folio instead of blocks_per_page
  block/bdev: enable large folio support for large logical block sizes

Luis Chamberlain (4):
  fs/buffer: simplify block_read_full_folio() with bh_offset()
  fs/buffer fs/mpage: remove large folio restriction
  block/bdev: lift block size restrictions to 64k
  bdev: use bdev_io_min() for statx block size

Matthew Wilcox (1):
  fs/buffer: remove batching from async read

 block/bdev.c           | 11 ++++----
 fs/buffer.c            | 58 +++++++++++++++++-------------------------
 fs/mpage.c             | 45 +++++++++++++++-----------------
 include/linux/blkdev.h |  9 ++++++-
 4 files changed, 58 insertions(+), 65 deletions(-)

-- 
2.45.2





[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux