diff mbox series

fs/buffer: using __bio_add_page in submit_bh_wbc()

Message ID 20230530033239.17534-1-gouhao@uniontech.com (mailing list archive)
State New, archived
Headers show
Series fs/buffer: using __bio_add_page in submit_bh_wbc() | expand

Commit Message

Gou Hao May 30, 2023, 3:32 a.m. UTC
From: Gou Hao <gouhao@uniontech.com>

In submit_bh_wbc(), bio is newly allocated, so it
does not need any merging logic.

And using bio_add_page here will execute 'bio_flagged(
bio, BIO_CLONED)' and 'bio_full' twice, which is unnecessary.

Signed-off-by: Gou Hao <gouhao@uniontech.com>
---
 fs/buffer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Matthew Wilcox (Oracle) May 30, 2023, 3:39 a.m. UTC | #1
On Tue, May 30, 2023 at 11:32:39AM +0800, gouhao@uniontech.com wrote:
> From: Gou Hao <gouhao@uniontech.com>
> 
> In submit_bh_wbc(), bio is newly allocated, so it
> does not need any merging logic.
> 
> And using bio_add_page here will execute 'bio_flagged(
> bio, BIO_CLONED)' and 'bio_full' twice, which is unnecessary.

https://lore.kernel.org/linux-fsdevel/20230502101934.24901-5-johannes.thumshirn@wdc.com/

You could send some Reviewed-by: tags to that patch series.
Gou Hao May 30, 2023, 3:52 a.m. UTC | #2
在 2023/5/30 11:39, Matthew Wilcox 写道:
> On Tue, May 30, 2023 at 11:32:39AM +0800, gouhao@uniontech.com wrote:
>> From: Gou Hao <gouhao@uniontech.com>
>>
>> In submit_bh_wbc(), bio is newly allocated, so it
>> does not need any merging logic.
>>
>> And using bio_add_page here will execute 'bio_flagged(
>> bio, BIO_CLONED)' and 'bio_full' twice, which is unnecessary.
> https://lore.kernel.org/linux-fsdevel/20230502101934.24901-5-johannes.thumshirn@wdc.com/
>
> You could send some Reviewed-by: tags to that patch series.
>
Ok, I didn't notice this patchset, thank you for your review.
diff mbox series

Patch

diff --git a/fs/buffer.c b/fs/buffer.c
index a7fc561758b1..5abc26d8399d 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -2760,7 +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));
+	__bio_add_page(bio, bh->b_page, bh->b_size, bh_offset(bh));
 	BUG_ON(bio->bi_iter.bi_size != bh->b_size);
 
 	bio->bi_end_io = end_bio_bh_io_sync;