dm-devel.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Johannes Thumshirn <johannes.thumshirn@wdc.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: linux-raid@vger.kernel.org,
	Damien Le Moal <damien.lemoal@wdc.com>,
	cluster-devel@redhat.com, Chaitanya Kulkarni <kch@nvidia.com>,
	Andreas Gruenbacher <agruenba@redhat.com>,
	Song Liu <song@kernel.org>, Dave Kleikamp <shaggy@kernel.org>,
	Johannes Thumshirn <johannes.thumshirn@wdc.com>,
	Mike Snitzer <snitzer@kernel.org>,
	jfs-discussion@lists.sourceforge.net,
	Matthew Wilcox <willy@infradead.org>,
	Ming Lei <ming.lei@redhat.com>,
	linux-block@vger.kernel.org, linux-mm@kvack.org,
	dm-devel@redhat.com, David Sterba <dsterba@suse.com>,
	linux-fsdevel@vger.kernel.org, Christoph Hellwig <hch@lst.de>,
	linux-btrfs@vger.kernel.org, Bob Peterson <rpeterso@redhat.com>
Subject: [dm-devel] [PATCH 00/19] bio: check return values of bio_add_page
Date: Wed, 29 Mar 2023 10:05:46 -0700	[thread overview]
Message-ID: <cover.1680108414.git.johannes.thumshirn@wdc.com> (raw)

We have two functions for adding a page to a bio, __bio_add_page() which is
used to add a single page to a freshly created bio and bio_add_page() which is
used to add a page to an existing bio.

While __bio_add_page() is expected to succeed, bio_add_page() can fail.

This series converts the callers of bio_add_page() which can easily use
__bio_add_page() to using it and checks the return of bio_add_page() for
callers that don't work on a freshly created bio.

Lastly it marks bio_add_page() as __must_check so we don't have to go again
and audit all callers.

Johannes Thumshirn (19):
  swap: use __bio_add_page to add page to bio
  drbd: use __bio_add_page to add page to bio
  dm: dm-zoned: use __bio_add_page for adding single metadata page
  fs: buffer: use __bio_add_page to add single page to bio
  md: use __bio_add_page to add single page
  md: raid5-log: use __bio_add_page to add single page
  md: raid5: use __bio_add_page to add single page to new bio
  btrfs: repair: use __bio_add_page for adding single page
  btrfs: raid56: use __bio_add_page to add single page
  jfs: logmgr: use __bio_add_page to add single page to bio
  gfs: use __bio_add_page for adding single page to bio
  zonefs: use __bio_add_page for adding single page to bio
  zram: use __bio_add_page for adding single page to bio
  floppy: use __bio_add_page for adding single page to bio
  md: check for failure when adding pages in alloc_behind_master_bio
  md: raid1: use __bio_add_page for adding single page to bio
  md: raid1: check if adding pages to resync bio fails
  dm-crypt: check if adding pages to clone bio fails
  block: mark bio_add_page as __must_check

 drivers/block/drbd/drbd_bitmap.c |  8 +++++---
 drivers/block/floppy.c           |  2 +-
 drivers/block/zram/zram_drv.c    |  2 +-
 drivers/md/dm-crypt.c            |  9 ++++++++-
 drivers/md/dm-zoned-metadata.c   |  6 +++---
 drivers/md/md.c                  |  4 ++--
 drivers/md/raid1-10.c            |  7 ++++++-
 drivers/md/raid1.c               |  5 +++--
 drivers/md/raid10.c              | 12 ++++++++++--
 drivers/md/raid5-cache.c         |  2 +-
 drivers/md/raid5-ppl.c           |  4 ++--
 fs/btrfs/bio.c                   |  2 +-
 fs/btrfs/raid56.c                |  2 +-
 fs/buffer.c                      |  2 +-
 fs/gfs2/ops_fstype.c             |  2 +-
 fs/jfs/jfs_logmgr.c              |  4 ++--
 fs/zonefs/super.c                |  2 +-
 include/linux/bio.h              |  2 +-
 mm/page_io.c                     |  8 ++++----
 19 files changed, 54 insertions(+), 31 deletions(-)

-- 
2.39.2

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


             reply	other threads:[~2023-03-29 17:08 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-29 17:05 Johannes Thumshirn [this message]
2023-03-29 17:05 ` [dm-devel] [PATCH 01/19] swap: use __bio_add_page to add page to bio Johannes Thumshirn
2023-03-29 23:29   ` Damien Le Moal
     [not found]   ` <CGME20230331122046eucas1p247e0cd2d06229a6b7cae9cb26ea43d5b@eucas1p2.samsung.com>
2023-03-31 12:12     ` Pankaj Raghav
2023-03-29 17:05 ` [dm-devel] [PATCH 02/19] drbd: " Johannes Thumshirn
2023-03-29 17:48   ` Matthew Wilcox
2023-03-29 23:29   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 03/19] dm: dm-zoned: use __bio_add_page for adding single metadata page Johannes Thumshirn
2023-03-29 23:30   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 04/19] fs: buffer: use __bio_add_page to add single page to bio Johannes Thumshirn
2023-03-29 23:31   ` Damien Le Moal
     [not found]   ` <CGME20230331122235eucas1p2208286ce210d9b01ea36a26bd3897b72@eucas1p2.samsung.com>
2023-03-31 12:14     ` Pankaj Raghav
2023-03-29 17:05 ` [dm-devel] [PATCH 05/19] md: use __bio_add_page to add single page Johannes Thumshirn
2023-03-29 23:31   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 06/19] md: raid5-log: " Johannes Thumshirn
2023-03-29 23:32   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 07/19] md: raid5: use __bio_add_page to add single page to new bio Johannes Thumshirn
2023-03-29 23:32   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 08/19] btrfs: repair: use __bio_add_page for adding single page Johannes Thumshirn
2023-03-29 23:33   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 09/19] btrfs: raid56: use __bio_add_page to add " Johannes Thumshirn
2023-03-29 23:33   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 10/19] jfs: logmgr: use __bio_add_page to add single page to bio Johannes Thumshirn
2023-03-29 23:34   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 11/19] gfs: use __bio_add_page for adding " Johannes Thumshirn
2023-03-29 23:34   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 12/19] zonefs: " Johannes Thumshirn
2023-03-29 23:35   ` Damien Le Moal
2023-03-29 17:05 ` [dm-devel] [PATCH 13/19] zram: " Johannes Thumshirn
2023-03-29 23:36   ` Damien Le Moal
     [not found]   ` <CGME20230331122828eucas1p18e0bbbda45a6955f59fc82b29f42a8bb@eucas1p1.samsung.com>
2023-03-31 12:20     ` Pankaj Raghav
2023-03-29 17:06 ` [dm-devel] [PATCH 14/19] floppy: " Johannes Thumshirn
2023-03-29 23:36   ` Damien Le Moal
2023-03-29 17:06 ` [dm-devel] [PATCH 15/19] md: check for failure when adding pages in alloc_behind_master_bio Johannes Thumshirn
2023-03-29 23:38   ` Damien Le Moal
2023-03-29 17:06 ` [dm-devel] [PATCH 16/19] md: raid1: use __bio_add_page for adding single page to bio Johannes Thumshirn
2023-03-29 23:38   ` Damien Le Moal
2023-03-29 17:06 ` [dm-devel] [PATCH 17/19] md: raid1: check if adding pages to resync bio fails Johannes Thumshirn
2023-03-29 23:44   ` Damien Le Moal
2023-03-30 10:38     ` Johannes Thumshirn
2023-03-29 17:06 ` [dm-devel] [PATCH 18/19] dm-crypt: check if adding pages to clone " Johannes Thumshirn
2023-03-29 23:49   ` Damien Le Moal
2023-03-30  0:17     ` Yang Shi
2023-03-30  0:24       ` Damien Le Moal
2023-03-30 22:29         ` Yang Shi
2023-03-29 17:06 ` [dm-devel] [PATCH 19/19] block: mark bio_add_page as __must_check Johannes Thumshirn
2023-03-29 23:58   ` Damien Le Moal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1680108414.git.johannes.thumshirn@wdc.com \
    --to=johannes.thumshirn@wdc.com \
    --cc=agruenba@redhat.com \
    --cc=axboe@kernel.dk \
    --cc=cluster-devel@redhat.com \
    --cc=damien.lemoal@wdc.com \
    --cc=dm-devel@redhat.com \
    --cc=dsterba@suse.com \
    --cc=hch@lst.de \
    --cc=jfs-discussion@lists.sourceforge.net \
    --cc=kch@nvidia.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-raid@vger.kernel.org \
    --cc=ming.lei@redhat.com \
    --cc=rpeterso@redhat.com \
    --cc=shaggy@kernel.org \
    --cc=snitzer@kernel.org \
    --cc=song@kernel.org \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).