All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johannes Thumshirn <johannes.thumshirn@wdc.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: Christoph Hellwig <hch@lst.de>, Hannes Reinecke <hare@suse.de>,
	Chaitanya Kulkarni <kch@nvidia.com>,
	Damien Le Moal <damien.lemoal@wdc.com>,
	Ming Lei <ming.lei@redhat.com>,
	linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-mm@kvack.org, dm-devel@redhat.com,
	Song Liu <song@kernel.org>,
	linux-raid@vger.kernel.org, Mike Snitzer <snitzer@kernel.org>,
	Matthew Wilcox <willy@infradead.org>,
	Dave Kleikamp <shaggy@kernel.org>,
	jfs-discussion@lists.sourceforge.net, cluster-devel@redhat.com,
	Bob Peterson <rpeterso@redhat.com>,
	Andreas Gruenbacher <agruenba@redhat.com>,
	David Sterba <dsterba@suse.com>,
	linux-btrfs@vger.kernel.org,
	Johannes Thumshirn <johannes.thumshirn@wdc.com>
Subject: [PATCH v2 00/19] bio: check return values of bio_add_page
Date: Thu, 30 Mar 2023 03:43:42 -0700	[thread overview]
Message-ID: <cover.1680172791.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.

Changes to v1:
- Removed pointless comment pointed out by Willy
- Changed commit messages pointed out by Damien
- Colledted Damien's Reviews and Acks

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 |  4 +---
 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, 50 insertions(+), 31 deletions(-)

-- 
2.39.2


WARNING: multiple messages have this Message-ID (diff)
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 v2 00/19] bio: check return values of bio_add_page
Date: Thu, 30 Mar 2023 03:43:42 -0700	[thread overview]
Message-ID: <cover.1680172791.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.

Changes to v1:
- Removed pointless comment pointed out by Willy
- Changed commit messages pointed out by Damien
- Colledted Damien's Reviews and Acks

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 |  4 +---
 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, 50 insertions(+), 31 deletions(-)

-- 
2.39.2

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


WARNING: multiple messages have this Message-ID (diff)
From: Johannes Thumshirn <johannes.thumshirn@wdc.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH v2 00/19] bio: check return values of bio_add_page
Date: Thu, 30 Mar 2023 03:43:42 -0700	[thread overview]
Message-ID: <cover.1680172791.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.

Changes to v1:
- Removed pointless comment pointed out by Willy
- Changed commit messages pointed out by Damien
- Colledted Damien's Reviews and Acks

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 |  4 +---
 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, 50 insertions(+), 31 deletions(-)

-- 
2.39.2


             reply	other threads:[~2023-03-30 10:45 UTC|newest]

Thread overview: 96+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-30 10:43 Johannes Thumshirn [this message]
2023-03-30 10:43 ` [Cluster-devel] [PATCH v2 00/19] bio: check return values of bio_add_page Johannes Thumshirn
2023-03-30 10:43 ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 01/19] swap: use __bio_add_page to add page to bio Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 02/19] drbd: " Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 03/19] dm: dm-zoned: use __bio_add_page for adding single metadata page Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 04/19] fs: buffer: use __bio_add_page to add single page to bio Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 05/19] md: use __bio_add_page to add single page Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-31 17:47   ` Song Liu
2023-03-31 17:47     ` [Cluster-devel] " Song Liu
2023-03-31 17:47     ` [dm-devel] " Song Liu
2023-03-30 10:43 ` [PATCH v2 06/19] md: raid5-log: " Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-31 17:47   ` Song Liu
2023-03-31 17:47     ` [Cluster-devel] " Song Liu
2023-03-31 17:47     ` [dm-devel] " Song Liu
2023-03-30 10:43 ` [PATCH v2 07/19] md: raid5: use __bio_add_page to add single page to new bio Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-31 17:47   ` Song Liu
2023-03-31 17:47     ` [Cluster-devel] " Song Liu
2023-03-31 17:47     ` [dm-devel] " Song Liu
2023-03-30 10:43 ` [PATCH v2 08/19] btrfs: repair: use __bio_add_page for adding single page Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 09/19] btrfs: raid56: use __bio_add_page to add " Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 10/19] jfs: logmgr: use __bio_add_page to add single page to bio Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 16:50   ` Dave Kleikamp
2023-03-30 16:50     ` [Cluster-devel] " Dave Kleikamp
2023-03-30 16:50     ` [dm-devel] " Dave Kleikamp
2023-03-30 10:43 ` [PATCH v2 11/19] gfs: use __bio_add_page for adding " Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 12/19] zonefs: " Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 13/19] zram: " Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 14/19] floppy: " Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:43 ` [PATCH v2 15/19] md: check for failure when adding pages in alloc_behind_master_bio Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-31 17:54   ` Song Liu
2023-03-31 17:54     ` [Cluster-devel] " Song Liu
2023-03-31 17:54     ` [dm-devel] " Song Liu
2023-03-30 10:43 ` [PATCH v2 16/19] md: raid1: use __bio_add_page for adding single page to bio Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-31 17:59   ` Song Liu
2023-03-31 17:59     ` [Cluster-devel] " Song Liu
2023-03-31 17:59     ` [dm-devel] " Song Liu
2023-03-30 10:43 ` [PATCH v2 17/19] md: raid1: check if adding pages to resync bio fails Johannes Thumshirn
2023-03-30 10:43   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:43   ` [dm-devel] " Johannes Thumshirn
2023-03-31 18:13   ` Song Liu
2023-03-31 18:13     ` [Cluster-devel] " Song Liu
2023-03-31 18:13     ` [dm-devel] " Song Liu
2023-04-04  8:26     ` Johannes Thumshirn
2023-04-04  8:26       ` [Cluster-devel] " Johannes Thumshirn
2023-04-04  8:26       ` [dm-devel] " Johannes Thumshirn
2023-04-10 16:06       ` Song Liu
2023-04-10 16:06         ` [Cluster-devel] " Song Liu
2023-04-10 16:06         ` [dm-devel] " Song Liu
2023-03-30 10:44 ` [PATCH v2 18/19] dm-crypt: check if adding pages to clone " Johannes Thumshirn
2023-03-30 10:44   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:44   ` [dm-devel] " Johannes Thumshirn
2023-03-30 10:44 ` [PATCH v2 19/19] block: mark bio_add_page as __must_check Johannes Thumshirn
2023-03-30 10:44   ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 10:44   ` [dm-devel] " Johannes Thumshirn
2023-03-30 15:45 ` [PATCH v2 00/19] bio: check return values of bio_add_page David Sterba
2023-03-30 15:45   ` [Cluster-devel] " David Sterba
2023-03-30 15:45   ` [dm-devel] " David Sterba
2023-03-30 16:41   ` Johannes Thumshirn
2023-03-30 16:41     ` [Cluster-devel] " Johannes Thumshirn
2023-03-30 16:41     ` [dm-devel] " Johannes Thumshirn
2023-03-30 19:25     ` David Sterba
2023-03-30 19:25       ` [Cluster-devel] " David Sterba
2023-03-30 19:25       ` [dm-devel] " David Sterba

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.1680172791.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=hare@suse.de \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.