linux-xfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* add more bio helpers v3
@ 2025-05-07 12:04 Christoph Hellwig
  2025-05-07 12:04 ` [PATCH 01/19] block: add a bio_add_virt_nofail helper Christoph Hellwig
                   ` (19 more replies)
  0 siblings, 20 replies; 29+ messages in thread
From: Christoph Hellwig @ 2025-05-07 12:04 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Md. Haris Iqbal, Jack Wang, Coly Li, Kent Overstreet,
	Mike Snitzer, Mikulas Patocka, Chris Mason, Josef Bacik,
	David Sterba, Andreas Gruenbacher, Carlos Maiolino,
	Damien Le Moal, Naohiro Aota, Johannes Thumshirn,
	Rafael J. Wysocki, Pavel Machek, slava, glaubitz, frank.li,
	linux-bcache, dm-devel, linux-btrfs, gfs2, linux-fsdevel,
	linux-xfs, linux-pm

Hi all,

this series adds more block layer helpers to remove boilerplate code when
adding memory to a bio or to even do the entire synchronous I/O.

The main aim is to avoid having to convert to a struct page in the caller
when adding kernel direct mapping or vmalloc memory.

Changes since v2:
 - rebase on top of the latest block for-next branch to resolve
   conflicts with the bonuce buffering removal

Changes since v1:
 - typo fixes
 - improve commit messages and kerneldoc comments
 - move bio_add_virt_nofail out of line
 - make the number of bio_vecs calculation helper more generic
 - add another vmalloc helper for the common case

Diffstat:
 block/bio.c                   |  101 +++++++++++++++++++++++++++++++++++++++++
 block/blk-map.c               |   92 +++++++++----------------------------
 drivers/block/pktcdvd.c       |    2 
 drivers/block/rnbd/rnbd-srv.c |    7 --
 drivers/block/ublk_drv.c      |    3 -
 drivers/block/virtio_blk.c    |    4 -
 drivers/md/bcache/super.c     |    3 -
 drivers/md/dm-bufio.c         |    2 
 drivers/md/dm-integrity.c     |   16 ++----
 drivers/nvme/host/core.c      |    2 
 drivers/scsi/scsi_ioctl.c     |    2 
 drivers/scsi/scsi_lib.c       |    3 -
 fs/btrfs/scrub.c              |   10 ----
 fs/gfs2/ops_fstype.c          |   24 +++------
 fs/hfsplus/wrapper.c          |   46 +++---------------
 fs/xfs/xfs_bio_io.c           |   30 ++++--------
 fs/xfs/xfs_buf.c              |   43 +++--------------
 fs/xfs/xfs_log.c              |   32 ++-----------
 fs/zonefs/super.c             |   34 ++++---------
 include/linux/bio.h           |   25 +++++++++-
 include/linux/blk-mq.h        |    4 -
 kernel/power/swap.c           |  103 ++++++++++++++++++------------------------
 22 files changed, 270 insertions(+), 318 deletions(-)

^ permalink raw reply	[flat|nested] 29+ messages in thread
* add more bio helpers v2
@ 2025-04-30 21:21 Christoph Hellwig
  2025-04-30 21:21 ` [PATCH 07/19] block: simplify bio_map_kern Christoph Hellwig
  0 siblings, 1 reply; 29+ messages in thread
From: Christoph Hellwig @ 2025-04-30 21:21 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Md. Haris Iqbal, Jack Wang, Coly Li, Kent Overstreet,
	Mike Snitzer, Mikulas Patocka, Chris Mason, Josef Bacik,
	David Sterba, Andreas Gruenbacher, Carlos Maiolino,
	Damien Le Moal, Naohiro Aota, Johannes Thumshirn,
	Rafael J. Wysocki, Pavel Machek, slava, glaubitz, frank.li,
	linux-bcache, dm-devel, linux-btrfs, gfs2, linux-fsdevel,
	linux-xfs, linux-pm

Hi all,

this series adds more block layer helpers to remove boilerplate code when
adding memory to a bio or to even do the entire synchronous I/O.

The main aim is to avoid having to convert to a struct page in the caller
when adding kernel direct mapping or vmalloc memory.

Changes since v1:
 - typo fixes
 - improve commit messages and kerneldoc comments
 - move bio_add_virt_nofail out of line
 - make the number of bio_vecs calculation helper more generic
 - add another vmalloc helper for the common case

Diffstat:
 block/bio.c                   |  101 +++++++++++++++++++++++++++++++++++++++++
 block/blk-map.c               |   92 +++++++++----------------------------
 drivers/block/pktcdvd.c       |    2 
 drivers/block/rnbd/rnbd-srv.c |    7 --
 drivers/block/ublk_drv.c      |    3 -
 drivers/block/virtio_blk.c    |    4 -
 drivers/md/bcache/super.c     |    3 -
 drivers/md/dm-bufio.c         |    2 
 drivers/md/dm-integrity.c     |   16 ++----
 drivers/nvme/host/core.c      |    2 
 drivers/scsi/scsi_ioctl.c     |    2 
 drivers/scsi/scsi_lib.c       |    3 -
 fs/btrfs/scrub.c              |   10 ----
 fs/gfs2/ops_fstype.c          |   24 +++------
 fs/hfsplus/wrapper.c          |   46 +++---------------
 fs/xfs/xfs_bio_io.c           |   30 ++++--------
 fs/xfs/xfs_buf.c              |   43 +++--------------
 fs/xfs/xfs_log.c              |   32 ++-----------
 fs/zonefs/super.c             |   34 ++++---------
 include/linux/bio.h           |   25 +++++++++-
 include/linux/blk-mq.h        |    4 -
 kernel/power/swap.c           |  103 ++++++++++++++++++------------------------
 22 files changed, 270 insertions(+), 318 deletions(-)

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

end of thread, other threads:[~2025-05-08 13:23 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-07 12:04 add more bio helpers v3 Christoph Hellwig
2025-05-07 12:04 ` [PATCH 01/19] block: add a bio_add_virt_nofail helper Christoph Hellwig
2025-05-07 12:04 ` [PATCH 02/19] block: add a bdev_rw_virt helper Christoph Hellwig
2025-05-07 14:01   ` Jens Axboe
2025-05-08 12:52     ` Matthew Wilcox
2025-05-08 13:10       ` Jens Axboe
2025-05-08 13:23       ` Johannes Thumshirn
2025-05-07 12:04 ` [PATCH 03/19] block: add a bio_add_max_vecs helper Christoph Hellwig
2025-05-07 12:04 ` [PATCH 04/19] block: add a bio_add_vmalloc helpers Christoph Hellwig
2025-05-07 12:04 ` [PATCH 05/19] block: remove the q argument from blk_rq_map_kern Christoph Hellwig
2025-05-07 12:04 ` [PATCH 06/19] block: pass the operation to bio_{map,copy}_kern Christoph Hellwig
2025-05-07 12:04 ` [PATCH 07/19] block: simplify bio_map_kern Christoph Hellwig
2025-05-07 12:04 ` [PATCH 08/19] bcache: use bio_add_virt_nofail Christoph Hellwig
2025-05-07 12:04 ` [PATCH 09/19] rnbd-srv: " Christoph Hellwig
2025-05-07 12:04 ` [PATCH 10/19] gfs2: use bdev_rw_virt in gfs2_read_super Christoph Hellwig
2025-05-07 12:04 ` [PATCH 11/19] zonefs: use bdev_rw_virt in zonefs_read_super Christoph Hellwig
2025-05-07 12:04 ` [PATCH 12/19] PM: hibernate: split and simplify hib_submit_io Christoph Hellwig
2025-05-07 12:04 ` [PATCH 13/19] dm-bufio: use bio_add_virt_nofail Christoph Hellwig
2025-05-07 12:04 ` [PATCH 14/19] dm-integrity: " Christoph Hellwig
2025-05-07 12:04 ` [PATCH 15/19] xfs: simplify xfs_buf_submit_bio Christoph Hellwig
2025-05-07 12:04 ` [PATCH 16/19] xfs: simplify xfs_rw_bdev Christoph Hellwig
2025-05-07 12:04 ` [PATCH 17/19] xfs: simplify building the bio in xlog_write_iclog Christoph Hellwig
2025-05-07 12:04 ` [PATCH 18/19] btrfs: use bdev_rw_virt in scrub_one_super Christoph Hellwig
2025-05-07 12:04 ` [PATCH 19/19] hfsplus: use bdev_rw_virt in hfsplus_submit_bio Christoph Hellwig
2025-05-07 14:02 ` add more bio helpers v3 Jens Axboe
  -- strict thread matches above, loose matches on Subject: below --
2025-04-30 21:21 add more bio helpers v2 Christoph Hellwig
2025-04-30 21:21 ` [PATCH 07/19] block: simplify bio_map_kern Christoph Hellwig
2025-05-01 18:56   ` Damien Le Moal
2025-05-02  7:05     ` Christoph Hellwig
2025-05-02  8:52   ` Johannes Thumshirn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).