Re: [PATCH] nilfs2: fix NULL pointer dereference in nilfs_palloc_commit_free_entry()
From: Ryusuke Konishi
Date: Sat Nov 19 2022 - 02:25:22 EST
On Sat, Nov 19, 2022 at 3:38 PM zhangpeng (AS) wrote:
>
> Hi, ZhangPeng,
>
> On Tue, Nov 15, 2022 at 3:39 AM Ryusuke Konishi wrote:
> As for the current outlook, it seems difficult to eliminate
> duplication of the virtual block number, so I think we will call
> nilfs_error() as follows:
>
> nilfs_dat_commit_entry(dat, req);
> + if (unlikely(req->pr_desc_bh == NULL || req->pr_bitmap_bh == NULL)) {
> + nilfs_error(dat->i_sb,
> + "state inconsistency due to duplicate use
> of vblocknr = %llu",
> + (unsigned long long)req->pr_entry_nr);
> + return;
> + }
> nilfs_palloc_commit_free_entry(dat, req);
>
> In that case, I would like to modify your patch and send it upstream
> as your patch. Is that OK ?
> Or do you want to fix it more by yourself ?
>
> Thanks,
> Ryusuke Konishi
>
> Thanks for your advice.
>
> Please modify my patch and send it upstream.
>
> That is really a complicated problem. Duplication of the virtual block
> number is not easy to fix. It is necessary to prevent further operations
> of the filesystem when the filesystem has a fatal flaw. I will continue
> to follow up.
All right, thanks!
Ryusuke Konishi