On 5/30/23 23:49, Johannes Thumshirn wrote:

The buffer_head submission 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.lem...@opensource.wdc.com>
Signed-off-by: Johannes Thumshirn <johannes.thumsh...@wdc.com>


Reviewed-by: Gou Hao <gou...@uniontech.com>

---
  fs/buffer.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/fs/buffer.c b/fs/buffer.c
index a7fc561758b1..63da30ce946a 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -2760,8 +2760,7 @@ static void submit_bh_wbc(blk_opf_t opf, struct 
buffer_head *bh,
bio->bi_iter.bi_sector = bh->b_blocknr * (bh->b_size >> 9); - bio_add_page(bio, bh->b_page, bh->b_size, bh_offset(bh));
-       BUG_ON(bio->bi_iter.bi_size != bh->b_size);
+       __bio_add_page(bio, bh->b_page, bh->b_size, bh_offset(bh));
bio->bi_end_io = end_bio_bh_io_sync;
        bio->bi_private = bh;

Reply via email to