[PATCH v14 08/10] erofs: support unencoded inodes for page cache share

Hongbo Li lihongbo22 at huawei.com
Thu Jan 15 12:47:53 AEDT 2026



On 2026/1/15 9:46, Gao Xiang wrote:
> 
> 
> 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.
> 

Ok,

Thanks,
Hongbo

> Thanks,
> Gao Xiang
> 
>>
>> Thanks,
>> Hongbo
>>


More information about the Linux-erofs mailing list