f2fs: fix error path of f2fs_submit_page_read()
authorChao Yu <chao@kernel.org>
Mon, 21 Aug 2023 15:22:24 +0000 (23:22 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Wed, 23 Aug 2023 17:24:40 +0000 (10:24 -0700)
In error path of f2fs_submit_page_read(), it missed to call
iostat_update_and_unbind_ctx() and free bio_post_read_ctx, fix it.

Signed-off-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/data.c

index 5d9697717353233387f484efddebcee7988f4735..916e317ac925fc3e2b3b8ba5679654babfb9b08e 100644 (file)
@@ -1167,6 +1167,9 @@ static int f2fs_submit_page_read(struct inode *inode, struct page *page,
        f2fs_wait_on_block_writeback(inode, blkaddr);
 
        if (bio_add_page(bio, page, PAGE_SIZE, 0) < PAGE_SIZE) {
+               iostat_update_and_unbind_ctx(bio);
+               if (bio->bi_private)
+                       mempool_free(bio->bi_private, bio_post_read_ctx_pool);
                bio_put(bio);
                return -EFAULT;
        }