2024-03-04 11:44:25

by Zhiguo Niu

[permalink] [raw]
Subject: [PATCH] f2fs: fix to remove f2fs_bug_on in add_bio_entry

add_bio_entry should not trigger system panic when bio_add_page fail,
fix to remove it.

Fixes: 0b20fcec8651 ("f2fs: cache global IPU bio")
Signed-off-by: Zhiguo Niu <[email protected]>
---
fs/f2fs/data.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index bd8674b..2fbbf8f 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -761,8 +761,10 @@ static void add_bio_entry(struct f2fs_sb_info *sbi, struct bio *bio,
be->bio = bio;
bio_get(bio);

- if (bio_add_page(bio, page, PAGE_SIZE, 0) != PAGE_SIZE)
- f2fs_bug_on(sbi, 1);
+ if (bio_add_page(bio, page, PAGE_SIZE, 0) != PAGE_SIZE) {
+ bio_put(bio);
+ return;
+ }

f2fs_down_write(&io->bio_list_lock);
list_add_tail(&be->list, &io->bio_list);
--
1.9.1