diff options
| author | Binglei Wang <l3b2w1@gmail.com> | 2026-10-01 14:01:31 +0800 |
|---|---|---|
| committer | Gao Xiang <xiang@kernel.org> | 2026-10-11 05:38:43 +0800 |
| commit | 6b722cefbf83558af07586ca94cdb4b370d5a82d (patch) | |
| tree | 3d1565861251f6728bab53daea5146928595d392 /tools/lib/python | |
| parent | a90ee4305c4a5df72c11b31dacfdc76e00fcf78a (diff) | |
| download | linux-next-6b722cefbf83558af07586ca94cdb4b370d5a82d.tar.gz linux-next-6b722cefbf83558af07586ca94cdb4b370d5a82d.zip | |
erofs: fix xattrs handling when metadata compression is used
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>
Reviewed-by: Gao Xiang <xiang@kernel.org>
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Gao Xiang <xiang@kernel.org>
Diffstat (limited to 'tools/lib/python')
0 files changed, 0 insertions, 0 deletions
