public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
* RFC: (almost) stop poking into bvec internals in btrfs
@ 2025-04-09 11:10 Christoph Hellwig
  2025-04-09 11:10 ` [PATCH 1/8] btrfs: remove the alignment checks in end_bbio_data_read Christoph Hellwig
                   ` (7 more replies)
  0 siblings, 8 replies; 26+ messages in thread
From: Christoph Hellwig @ 2025-04-09 11:10 UTC (permalink / raw)
  To: Qu Wenruo; +Cc: linux-btrfs

Hi Qu,

as you asked for patches to clean up the btrfs poking into bvec
internals, this series does an almost complete sweep.  The only bit
left is the page address in the decompression helper.  I though it
should be able to be replaced with logic based on bbio->file_offset,
but that leads to crashed and data corruption and I ran out of the
time I could allocate to this.

This passes a quick xfstests run with and without -o compress, but
otherwise should be taken as RFC quality code.  Maybe you can take
up the bits you like for your folios work?

Diffstat:
 bio.c         |    9 +-
 bio.h         |    3 
 btrfs_inode.h |    4 -
 compression.c |    9 +-
 disk-io.c     |    7 +-
 extent_io.c   |   60 ++++--------------
 inode.c       |   18 ++---
 raid56.c      |  193 ++++++++++++++++++++++------------------------------------
 scrub.c       |   80 +++++++-----------------
 9 files changed, 142 insertions(+), 241 deletions(-)

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2025-04-19  1:01 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-09 11:10 RFC: (almost) stop poking into bvec internals in btrfs Christoph Hellwig
2025-04-09 11:10 ` [PATCH 1/8] btrfs: remove the alignment checks in end_bbio_data_read Christoph Hellwig
2025-04-09 22:13   ` Qu Wenruo
2025-04-10  5:30     ` Christoph Hellwig
2025-04-10  5:39       ` Qu Wenruo
2025-04-09 11:10 ` [PATCH 2/8] btrfs: track the next file offset in struct btrfs_bio_ctrl Christoph Hellwig
2025-04-09 22:15   ` Qu Wenruo
2025-04-09 11:10 ` [PATCH 3/8] btrfs: pass a physical address to btrfs_repair_io_failure Christoph Hellwig
2025-04-09 22:19   ` Qu Wenruo
2025-04-10  5:31     ` Christoph Hellwig
2025-04-10  6:06   ` Johannes Thumshirn
2025-04-10  6:17     ` hch
2025-04-09 11:10 ` [PATCH 4/8] btrfs: move kmapping out of btrfs_check_sector_csum Christoph Hellwig
2025-04-10  6:16   ` Johannes Thumshirn
2025-04-16  4:51   ` Qu Wenruo
2025-04-09 11:10 ` [PATCH 5/8] btrfs: simplify bvec iteration in index_one_bio Christoph Hellwig
2025-04-18  2:09   ` Qu Wenruo
2025-04-09 11:10 ` [PATCH 6/8] btrfs: store a kernel virtual address in struct sector_ptr Christoph Hellwig
2025-04-09 22:34   ` Qu Wenruo
2025-04-10  5:34     ` Christoph Hellwig
2025-04-14  3:04       ` Qu Wenruo
2025-04-17 23:41         ` Qu Wenruo
2025-04-09 11:10 ` [PATCH 7/8] btrfs: refactor getting the address of a stripe sector Christoph Hellwig
2025-04-09 22:38   ` Qu Wenruo
2025-04-19  1:01   ` Qu Wenruo
2025-04-09 11:10 ` [PATCH 8/8] btrfs: use bvec_kmap_local in btrfs_decompress_buf2page Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox