On 2026/1/15 09:36, Hongbo Li wrote:
Hi,Xiang
On 2026/1/14 22:51, Gao Xiang wrote:
On 2026/1/9 18:28, Hongbo Li wrote:
This patch adds inode page cache sharing functionality for unencoded
files.
I conducted experiments in the container environment. Below is the
...
iomap->inline_data = ptr;
@@ -383,11 +385,16 @@ static int erofs_read_folio(struct file *file, struct
folio *folio)
.ops = &iomap_bio_read_ops,
.cur_folio = folio,
};
- struct erofs_iomap_iter_ctx iter_ctx = {};
+ bool need_iput;
+ struct erofs_iomap_iter_ctx iter_ctx = {
+ .realinode = erofs_real_inode(folio_inode(folio), &need_iput),
+ };
- trace_erofs_read_folio(folio, true);
+ trace_erofs_read_folio(iter_ctx.realinode, folio, true);
iomap_read_folio(&erofs_iomap_ops, &read_ctx, &iter_ctx);
+ if (need_iput)
+ iput(iter_ctx.realinode);
return 0;
}
@@ -397,12 +404,17 @@ static void erofs_readahead(struct readahead_control *rac)
.ops = &iomap_bio_read_ops,
.rac = rac,
};
- struct erofs_iomap_iter_ctx iter_ctx = {};
+ bool need_iput;
+ struct erofs_iomap_iter_ctx iter_ctx = {
+ .realinode = erofs_real_inode(rac->mapping->host, &need_iput),
+ };
- trace_erofs_readahead(rac->mapping->host, readahead_index(rac),
+ trace_erofs_readahead(iter_ctx.realinode, readahead_index(rac),
readahead_count(rac), true);
Is it possible to add a commit to update the tracepoints
to add the new realinode first?
Yeah, so should we put the update on trace_erofs_read_folio and trace_erofs_readahead in
a single patch after "[PATCH v14 03/10] fs: Export alloc_empty_backing_file"?
I think the tracepoint one should be just before this patch.
Since the first two patches in this series has merged in vfs tree (thanks
Christian), should we reorder the left patches?
I think you just send the new patchset version
in the future without the first two patches
in the version.
Thanks,
Gao Xiang
Thanks,
Hongbo