Re: [RFC PATCH v3 6/8] fuse: implementation of lookup_handle+statx compound operation

From: Jingbo Xu

Date: Thu Apr 09 2026 - 22:18:13 EST


Hi Amir,

On 4/9/26 10:03 PM, Amir Goldstein wrote:
> On Thu, Apr 9, 2026 at 4:27 AM Jingbo Xu <jefflexu@xxxxxxxxxxxxxxxxx> wrote:
>>
>> Many thanks for your work on this.
>>
>> Just FYI We are also interested in the kernel-maintained filehandle,
>> which can dramatically help reduce the memory footprint on the FUSE
>> server side.
>>
>
> Hi Jingbo,
>
> I might have told you this before. I don't keep track of who I shared this with.
> If you are implementing a passthough fs to a backing fs like ext4/xfs which
> CAN open a file by inode number, you could already use this library
> that I developed for our in house passthrough fs, to reduce memory footprint
> of server:
>
> https://github.com/amir73il/libfuse/commits/fuse_passthrough
>
> It was my intention to adapt this library to also work with LOOKUP_HANDLE
> to support more backing fs after LOOKUP_HANDLE is implemented.


Many thanks for the shared link and kind reminder. To be honest I
didn't notice it. IIUC it seems that the previous O_PATH fd (of backing
ext4/xfs file) is replaced by the file handle (of backing file), so that
the memory footprint for the inode cache for the backing files could be
saved.

Actually in our using case, the backing store is a remote network file
system and FUSE daemon uses file handles to access remote network files.

Besides the LOOKUP_HANDLE mechanism also helps the FUSE daemon recovery,
since the daemon doesn't need to rebuild the nodeid<->filehandle mapping
after recovery any more.

--
Thanks,
Jingbo