On 02.05.23 13:51, Bob Peterson wrote: > On 5/2/23 6:19 AM, Johannes Thumshirn wrote: >> The GFS2 superblock reading code uses bio_add_page() to add a page to a >> newly created bio. bio_add_page() can fail, but the return value is never >> checked. >> >> Use __bio_add_page() as adding a single page to a newly created bio is >> guaranteed to succeed. >> >> This brings us a step closer to marking bio_add_page() as __must_check. >> >> Reviewed-by: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx> >> Reviewed-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx> >> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@xxxxxxx> >> --- >> fs/gfs2/ops_fstype.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c >> index 9af9ddb61ca0..cd962985b058 100644 >> --- a/fs/gfs2/ops_fstype.c >> +++ b/fs/gfs2/ops_fstype.c >> @@ -254,7 +254,7 @@ static int gfs2_read_super(struct gfs2_sbd *sdp, sector_t sector, int silent) >> >> bio = bio_alloc(sb->s_bdev, 1, REQ_OP_READ | REQ_META, GFP_NOFS); >> bio->bi_iter.bi_sector = sector * (sb->s_blocksize >> 9); >> - bio_add_page(bio, page, PAGE_SIZE, 0); >> + __bio_add_page(bio, page, PAGE_SIZE, 0); >> >> bio->bi_end_io = end_bio_io_page; >> bio->bi_private = page; > Hi Johannes, > > So...I see 6 different calls to bio_add_page() in gfs2. > Why change this particular bio_add_page() to __bio_add_page() and not > the other five? > Hi Bob, Because all the others check the return value of bio_add_page(), only the one converted doesn't. But it also doesn't need to as we're using __bio_add_page() on a newly created bio.