Messages in this thread |  | | From | binglei wang <> | | Date | Sat, 3 Oct 2026 18:30:04 +0800 | | Subject | Re: [PATCH v2] erofs: fix folio reuse from a different address_space in erofs_bread() |
| |
Thanks, happy National Day.
Gao Xiang <xiang@kernel.org> 于2026年10月3日周六 00:01写道:
> > On Thu, Oct 01, 2026 at 02:01:31PM +0800, Binglei Wang wrote: > > erofs_bread() reuses a cached folio on page index match without > > checking folio->mapping. > > > > xattr.c calls erofs_init_metabuf() twice on the same buffer without > > erofs_put_metabuf(); the two in_metabox sources differ, so buf->mapping > > can switch while buf->page still belongs to the old address_space. > > The next erofs_bread() then reads the wrong mapping, dropping shared > > xattrs with METABOX. > > > > We require folio->mapping == buf->mapping in the reuse check; otherwise > > drop the cached folio and re-read via the slow path. > > > > Fixes: 414091322c63 ("erofs: implement metadata compression") > > Cc: Bo Liu (OpenAnolis) <liubo03@inspur.com> > > Signed-off-by: Binglei Wang <l3b2w1@gmail.com> > > I applied this patch with the updated subject: > > erofs: fix xattrs handling when metadata compression is used > > Reviewed-by: Gao Xiang <xiang@kernel.org> > > Thanks, > Gao Xiang
|  |