linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 00/37] block: introduce bio_init_fields()
@ 2021-01-19  5:05 Chaitanya Kulkarni
  2021-01-19  5:05 ` [RFC PATCH 01/37] block: introduce bio_init_fields() helper Chaitanya Kulkarni
                   ` (40 more replies)
  0 siblings, 41 replies; 44+ messages in thread
From: Chaitanya Kulkarni @ 2021-01-19  5:05 UTC (permalink / raw)
  To: linux-block, linux-xfs, linux-fsdevel, linux-kernel, drbd-dev,
	linux-bcache, linux-raid, linux-nvme, linux-scsi, target-devel,
	linux-btrfs, linux-ext4, cluster-devel
  Cc: jfs-discussion, dm-devel, axboe, philipp.reisner, lars.ellenberg,
	efremov, colyli, kent.overstreet, agk, snitzer, song, hch, sagi,
	martin.petersen, viro, clm, josef, dsterba, tytso,
	adilger.kernel, rpeterso, agruenba, darrick.wong, shaggy,
	damien.lemoal, naohiro.aota, jth, tj, osandov, bvanassche,
	gustavo, asml.silence, jefflexu, Chaitanya Kulkarni

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 4208 bytes --]

Hi,

This is a *compile only RFC* which adds a generic helper to initialize
the various fields of the bio that is repeated all the places in
file-systems, block layer, and drivers.

The new helper allows callers to initialize various members such as
bdev, sector, private, end io callback, io priority, and write hints.

The objective of this RFC is to only start a discussion, this it not 
completely tested at all.                                                                                                            
Following diff shows code level benefits of this helper :-
 38 files changed, 124 insertions(+), 236 deletions(-)

-ck

Chaitanya Kulkarni (37):
  block: introduce bio_init_fields() helper
  fs: use bio_init_fields in block_dev
  btrfs: use bio_init_fields in disk-io
  btrfs: use bio_init_fields in volumes
  ext4: use bio_init_fields in page_io
  gfs2: use bio_init_fields in lops
  gfs2: use bio_init_fields in meta_io
  gfs2: use bio_init_fields in ops_fstype
  iomap: use bio_init_fields in buffered-io
  iomap: use bio_init_fields in direct-io
  jfs: use bio_init_fields in logmgr
  zonefs: use bio_init_fields in append
  drdb: use bio_init_fields in actlog
  drdb: use bio_init_fields in bitmap
  drdb: use bio_init_fields in receiver
  floppy: use bio_init_fields
  pktcdvd: use bio_init_fields
  bcache: use bio_init_fields in journal
  bcache: use bio_init_fields in super
  bcache: use bio_init_fields in writeback
  dm-bufio: use bio_init_fields
  dm-crypt: use bio_init_fields
  dm-zoned: use bio_init_fields metadata
  dm-zoned: use bio_init_fields target
  dm-zoned: use bio_init_fields
  dm log writes: use bio_init_fields
  nvmet: use bio_init_fields in bdev-ns
  target: use bio_init_fields in iblock
  btrfs: use bio_init_fields in scrub
  fs: use bio_init_fields in buffer
  eros: use bio_init_fields in data
  eros: use bio_init_fields in zdata
  jfs: use bio_init_fields in metadata
  nfs: use bio_init_fields in blocklayout
  ocfs: use bio_init_fields in heartbeat
  xfs: use bio_init_fields in xfs_buf
  xfs: use bio_init_fields in xfs_log

 block/blk-lib.c                     | 13 +++++--------
 drivers/block/drbd/drbd_actlog.c    |  5 +----
 drivers/block/drbd/drbd_bitmap.c    |  5 +----
 drivers/block/drbd/drbd_receiver.c  | 11 +++--------
 drivers/block/floppy.c              |  5 +----
 drivers/block/pktcdvd.c             | 12 ++++--------
 drivers/md/bcache/journal.c         | 21 ++++++++-------------
 drivers/md/bcache/super.c           | 19 +++++--------------
 drivers/md/bcache/writeback.c       | 14 ++++++--------
 drivers/md/dm-bufio.c               |  5 +----
 drivers/md/dm-crypt.c               |  4 +---
 drivers/md/dm-log-writes.c          | 21 ++++++---------------
 drivers/md/dm-zoned-metadata.c      | 15 +++++----------
 drivers/md/dm-zoned-target.c        |  9 +++------
 drivers/md/md.c                     |  6 ++----
 drivers/nvme/target/io-cmd-bdev.c   |  4 +---
 drivers/target/target_core_iblock.c | 11 +++--------
 fs/block_dev.c                      | 17 +++++------------
 fs/btrfs/disk-io.c                  | 11 ++++-------
 fs/btrfs/scrub.c                    |  6 ++----
 fs/btrfs/volumes.c                  |  4 +---
 fs/buffer.c                         |  7 ++-----
 fs/erofs/data.c                     |  6 ++----
 fs/erofs/zdata.c                    |  9 +++------
 fs/ext4/page-io.c                   |  6 ++----
 fs/gfs2/lops.c                      |  6 ++----
 fs/gfs2/meta_io.c                   |  5 ++---
 fs/gfs2/ops_fstype.c                |  7 ++-----
 fs/iomap/buffered-io.c              |  5 ++---
 fs/iomap/direct-io.c                | 15 +++++----------
 fs/jfs/jfs_logmgr.c                 | 16 ++++------------
 fs/jfs/jfs_metapage.c               | 16 +++++++---------
 fs/nfs/blocklayout/blocklayout.c    |  8 ++------
 fs/ocfs2/cluster/heartbeat.c        |  4 +---
 fs/xfs/xfs_buf.c                    |  6 ++----
 fs/xfs/xfs_log.c                    |  6 ++----
 fs/zonefs/super.c                   |  7 +++----
 include/linux/bio.h                 | 13 +++++++++++++
 38 files changed, 124 insertions(+), 236 deletions(-)

-- 
2.22.1


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

end of thread, other threads:[~2021-01-21  8:28 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-19  5:05 [RFC PATCH 00/37] block: introduce bio_init_fields() Chaitanya Kulkarni
2021-01-19  5:05 ` [RFC PATCH 01/37] block: introduce bio_init_fields() helper Chaitanya Kulkarni
2021-01-19  5:05 ` [RFC PATCH 02/37] fs: use bio_init_fields in block_dev Chaitanya Kulkarni
2021-01-19  5:05 ` [RFC PATCH 03/37] btrfs: use bio_init_fields in disk-io Chaitanya Kulkarni
2021-01-19  5:05 ` [RFC PATCH 04/37] btrfs: use bio_init_fields in volumes Chaitanya Kulkarni
2021-01-19 13:52   ` Nikolay Borisov
2021-01-19  5:05 ` [RFC PATCH 05/37] ext4: use bio_init_fields in page_io Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 06/37] gfs2: use bio_init_fields in lops Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 07/37] gfs2: use bio_init_fields in meta_io Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 08/37] gfs2: use bio_init_fields in ops_fstype Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 09/37] iomap: use bio_init_fields in buffered-io Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 10/37] iomap: use bio_init_fields in direct-io Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 11/37] jfs: use bio_init_fields in logmgr Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 12/37] zonefs: use bio_init_fields in append Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 13/37] drdb: use bio_init_fields in actlog Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 14/37] drdb: use bio_init_fields in bitmap Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 15/37] drdb: use bio_init_fields in receiver Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 16/37] floppy: use bio_init_fields Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 17/37] pktcdvd: " Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 18/37] bcache: use bio_init_fields in journal Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 19/37] bcache: use bio_init_fields in super Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 20/37] bcache: use bio_init_fields in writeback Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 21/37] dm-bufio: use bio_init_fields Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 22/37] dm-crypt: " Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 23/37] dm-zoned: use bio_init_fields metadata Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 24/37] dm-zoned: use bio_init_fields target Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 25/37] dm-zoned: use bio_init_fields Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 26/37] dm log writes: " Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 27/37] nvmet: use bio_init_fields in bdev-ns Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 28/37] target: use bio_init_fields in iblock Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 29/37] btrfs: use bio_init_fields in scrub Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 30/37] fs: use bio_init_fields in buffer Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 31/37] eros: use bio_init_fields in data Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 32/37] eros: use bio_init_fields in zdata Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 33/37] jfs: use bio_init_fields in metadata Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 34/37] nfs: use bio_init_fields in blocklayout Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 35/37] ocfs: use bio_init_fields in heartbeat Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 36/37] xfs: use bio_init_fields in xfs_buf Chaitanya Kulkarni
2021-01-19  5:06 ` [RFC PATCH 37/37] xfs: use bio_init_fields in xfs_log Chaitanya Kulkarni
2021-01-19 14:14 ` [RFC PATCH 00/37] block: introduce bio_init_fields() Mike Snitzer
2021-01-19 15:00 ` Josef Bacik
2021-01-20  3:27 ` Chaitanya Kulkarni
2021-01-21  3:00 ` Julian Calaby
2021-01-21  8:23   ` Chaitanya Kulkarni

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).