mbox series

[v2,0/8] Add and use bdev_getblk()

Message ID 20230914150011.843330-1-willy@infradead.org (mailing list archive)
Headers show
Series Add and use bdev_getblk() | expand

Message

Matthew Wilcox Sept. 14, 2023, 3 p.m. UTC
This patch series fixes a bug reported by Hui Zhu; see proposed
patches v1 and v2:
https://lore.kernel.org/linux-fsdevel/20230811035705.3296-1-teawaterz@linux.alibaba.com/
https://lore.kernel.org/linux-fsdevel/20230811071519.1094-1-teawaterz@linux.alibaba.com/

I decided to go in a rather different direction for this fix, and
fix a related problem at the same time.  I don't think there's any
urgency to rush this into Linus' tree, nor have I marked it for stable.
Reasonable people may disagree.

For v2, I fixed a bug around the use of __GFP_ACCOUNT, and Jan Kara
pushed me into making __getblk_gfp() disappear entirely (patches 5-8).
It's currently churning through xfstests and has got up to generic/048.

Matthew Wilcox (Oracle) (8):
  buffer: Pass GFP flags to folio_alloc_buffers()
  buffer: Hoist GFP flags from grow_dev_page() to __getblk_gfp()
  ext4: Use bdev_getblk() to avoid memory reclaim in readahead path
  buffer: Use bdev_getblk() to avoid memory reclaim in readahead path
  buffer: Convert getblk_unmovable() and __getblk() to use bdev_getblk()
  buffer: Convert sb_getblk() to call __getblk()
  ext4: Call bdev_getblk() from sb_getblk_gfp()
  buffer: Remove __getblk_gfp()

 fs/buffer.c                 | 79 ++++++++++++++++++++-----------------
 fs/ext4/super.c             | 13 ++++--
 include/linux/buffer_head.h | 53 ++++++++++++++-----------
 3 files changed, 83 insertions(+), 62 deletions(-)