cluster-devel.redhat.com archive mirror
 help / color / mirror / Atom feed
* [Cluster-devel] [PATCH v3 00/19] bio: check return values of bio_add_page
@ 2023-04-19 14:09 Johannes Thumshirn
  2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 01/19] swap: use __bio_add_page to add page to bio Johannes Thumshirn
                   ` (18 more replies)
  0 siblings, 19 replies; 25+ messages in thread
From: Johannes Thumshirn @ 2023-04-19 14:09 UTC (permalink / raw)
  To: cluster-devel.redhat.com

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.

NOTE: David already applied the two btrfs patches to his tree but I've left
them in the series to make the build bot happy.

Changes to v2:
- Removed 'wont fail' comments pointed out by Song

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            | 11 ++++++-----
 drivers/md/raid1.c               |  7 +++++--
 drivers/md/raid10.c              | 20 ++++++++++----------
 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, 52 insertions(+), 43 deletions(-)


base-commit: af67688dca57999fd848f051eeea1d375ba546b2
-- 
2.39.2


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

end of thread, other threads:[~2023-04-20  8:55 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-19 14:09 [Cluster-devel] [PATCH v3 00/19] bio: check return values of bio_add_page Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 01/19] swap: use __bio_add_page to add page to bio Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 02/19] drbd: " Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 03/19] dm: dm-zoned: use __bio_add_page for adding single metadata page Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 04/19] fs: buffer: use __bio_add_page to add single page to bio Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 05/19] md: use __bio_add_page to add single page Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 06/19] md: raid5-log: " Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 07/19] md: raid5: use __bio_add_page to add single page to new bio Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 08/19] btrfs: repair: use __bio_add_page for adding single page Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 09/19] btrfs: raid56: use __bio_add_page to add " Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 10/19] jfs: logmgr: use __bio_add_page to add single page to bio Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 11/19] gfs: use __bio_add_page for adding " Johannes Thumshirn
2023-04-19 15:19   ` Andreas Gruenbacher
2023-04-20  8:55     ` Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 12/19] zonefs: " Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 13/19] zram: " Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 14/19] floppy: " Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 15/19] md: check for failure when adding pages in alloc_behind_master_bio Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 16/19] md: raid1: use __bio_add_page for adding single page to bio Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 17/19] md: raid1: check if adding pages to resync bio fails Johannes Thumshirn
2023-04-20  4:39   ` Song Liu
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 18/19] dm-crypt: check if adding pages to clone " Johannes Thumshirn
2023-04-19 14:09 ` [Cluster-devel] [PATCH v3 19/19] block: mark bio_add_page as __must_check Johannes Thumshirn
2023-04-19 14:19   ` Matthew Wilcox
2023-04-19 15:49     ` 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).