From: Yalagada Pavan Kumar <pavankumaryalagada@gmail.com>
To: Joseph Qi <joseph.qi@linux.alibaba.com>
Cc: Christian Brauner <brauner@kernel.org>,
linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org,
ocfs2-devel@lists.linux.dev, linux-kernel@vger.kernel.org,
Srikanth Aithal <Srikanth.Aithal@amd.com>,
Luca Weiss <luca.weiss@fairphone.com>, Jan Kara <jack@suse.cz>
Subject: Re: [PATCH] buffer: fix NULL dereference of bh->b_folio in __bh_submit()
Date: Thu, 3 Sep 2026 02:22:24 +0530 [thread overview]
Message-ID: <apiMiLlwujmqyYLP@user> (raw)
In-Reply-To: <20260902013357.2815214-1-joseph.qi@linux.alibaba.com>
On Wed, Sep 02, 2026 at 09:33:57AM +0800, Joseph Qi wrote:
> Commit a2c924c240e7 ("buffer: set BIO_COMPLETE_IN_TASK for dropbehind
> writeback") added an unconditional folio_test_dropbehind(bh->b_folio) in
> __bh_submit(). But jbd2 shadow buffers have a NULL b_folio since commit
> 5febcba29792 ("jbd2: point the shadow buffer at the frozen data
> directly") made them point b_data at the kmalloced frozen data rather
> than a folio. Submitting such a buffer during journal commit oopses:
>
> BUG: kernel NULL pointer dereference, address: 0000000000000000
> RIP: 0010:__bh_submit.constprop.0+0x87/0x120
> Call Trace:
> jbd2_journal_commit_transaction+0x932/0x1b10
> kjournald2+0xb2/0x250
>
> Hit by the ocfs2-testsuite fill_verify_holes test running with
> data=writeback.
>
> Dropbehind only applies to buffers backed by a folio, so skip the check
> when b_folio is NULL.
>
Hi,
I was working on a fix for this syzbot report [1] and didn't realize that you were
already working on it. I noticed your patch on the mailing list, so i won't
send a duplicate patch.
> Fixes: 5febcba29792 ("jbd2: point the shadow buffer at the frozen data directly")
Could you please add the Reported-by: and Closes: tags from the syzbot report
to your patch? This will help syzbot associate the patch with the reported
issue and track the fix.
[1]: https://syzkaller.appspot.com/bug?extid=41453ea05ab61c075f1f
Thank you,
Pavan
> Tested-by: Srikanth Aithal <Srikanth.Aithal@amd.com>
> Tested-by: Luca Weiss <luca.weiss@fairphone.com> # sm7225-fairphone-fp4
> Reviewed-by: Jan Kara <jack@suse.cz>
> Signed-off-by: Joseph Qi <joseph.qi@linux.alibaba.com>
> ---
> fs/buffer.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/buffer.c b/fs/buffer.c
> index 427d8a817cd5..f46fa6413032 100644
> --- a/fs/buffer.c
> +++ b/fs/buffer.c
> @@ -1106,7 +1106,8 @@ static void __bh_submit(struct buffer_head *bh, blk_opf_t opf,
>
> bio = bio_alloc(bh->b_bdev, 1, opf, GFP_NOIO);
>
> - if (folio_test_dropbehind(bh->b_folio) && op_is_write(opf))
> + if (bh->b_folio && folio_test_dropbehind(bh->b_folio) &&
> + op_is_write(opf))
> bio_set_flag(bio, BIO_COMPLETE_IN_TASK);
>
> if (IS_ENABLED(CONFIG_FS_ENCRYPTION))
> --
> 2.39.3
>
next prev parent reply other threads:[~2026-09-02 20:52 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-02 1:33 [PATCH] buffer: fix NULL dereference of bh->b_folio in __bh_submit() Joseph Qi
2026-09-02 1:38 ` sashiko-bot
2026-09-02 20:52 ` Yalagada Pavan Kumar [this message]
2026-09-03 1:42 ` Joseph Qi
2026-09-04 10:35 ` Christian Brauner
2026-09-04 5:28 ` Greg Ociepka
2026-09-06 5:50 ` Gong Shuai
2026-09-08 5:32 ` Dang Huynh
2026-09-08 10:10 ` Chris Paterson
2026-09-10 8:08 ` Konrad Dybcio
2026-09-10 11:14 ` Jan Kara
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=apiMiLlwujmqyYLP@user \
--to=pavankumaryalagada@gmail.com \
--cc=Srikanth.Aithal@amd.com \
--cc=brauner@kernel.org \
--cc=jack@suse.cz \
--cc=joseph.qi@linux.alibaba.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=luca.weiss@fairphone.com \
--cc=ocfs2-devel@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.