[RFC PATCH v2 0/8] fuse: caches documentation and testing

Luis Henriques posted 8 patches 1 month, 1 week ago
There is a newer version of this series
.../filesystems/fuse/fuse-caches.rst          | 142 ++++++++
.../selftests/filesystems/fuse/.gitignore     |   3 +
.../selftests/filesystems/fuse/Makefile       |  28 +-
.../filesystems/fuse/fuse_acl_cache_test.c    | 289 ++++++++++++++--
.../selftests/filesystems/fuse/fuse_mnt.c     |  17 +-
.../fuse/fuse_readdir_cache_test.c            | 314 ++++++++++++++++++
.../fuse/fuse_symlink_cache_test.c            | 204 ++++++++++++
.../selftests/filesystems/fuse/fusectl_test.c |   7 +
8 files changed, 950 insertions(+), 54 deletions(-)
create mode 100644 Documentation/filesystems/fuse/fuse-caches.rst
create mode 100644 tools/testing/selftests/filesystems/fuse/fuse_readdir_cache_test.c
create mode 100644 tools/testing/selftests/filesystems/fuse/fuse_symlink_cache_test.c
[RFC PATCH v2 0/8] fuse: caches documentation and testing
Posted by Luis Henriques 1 month, 1 week ago
Hi!

I'm (finally!) sending v2 of this patchset.  It tries to document (and add
a few kselftests) to the different types of caches that are currently in use
within FUSE.  As I mentioned in v1 the idea for documenting this came from
Miklos during this year's LSFMM, where he mentioned he would like to see
caches usage documented before he could merge an initial version of fusex.

This version documents symlinks, attributes, ACLs and readdir caches.  Still
missing: dentries and data caching.

I'm still sending it as an RFC as I'm still not sure if it fulfils Miklos'
initial goal.

As usual feedback is welcome, as I'll (slowly) continue looking into other
cache types.

Major changes since v1:
- Added more caches to the document
- Changed tests format to single self-contained binaries
- Since Amir added a new fuse3-based test, the conversion to fuse3 of the
  fusectl has minor changes to the Makefile
  - NOTE: I've kept Amir's Reviewed-by anyway (should I drop it?)
- Added the ACL test-cases to the new ACL test implemented by Amir
  - This required some re-work of the existing test (patches 5 & 6)
- Added more tests

Luis Henriques (8):
  Documentation: fuse: add document on caches being used by FUSE
  selftests/fuse: convert fusectl test to fuse3
  selftests/fuse: check that fusectlfs is mounted
  selftests/fuse: add fuse symlink caching test
  selftests/fuse: factor-out test fixture setup/teardown
  selftests/fuse: use dynamically allocated memory to store ACLs
  selftests/fuse: add some extra ACL caching tests
  selftests/fuse: add fuse readdir caching test

 .../filesystems/fuse/fuse-caches.rst          | 142 ++++++++
 .../selftests/filesystems/fuse/.gitignore     |   3 +
 .../selftests/filesystems/fuse/Makefile       |  28 +-
 .../filesystems/fuse/fuse_acl_cache_test.c    | 289 ++++++++++++++--
 .../selftests/filesystems/fuse/fuse_mnt.c     |  17 +-
 .../fuse/fuse_readdir_cache_test.c            | 314 ++++++++++++++++++
 .../fuse/fuse_symlink_cache_test.c            | 204 ++++++++++++
 .../selftests/filesystems/fuse/fusectl_test.c |   7 +
 8 files changed, 950 insertions(+), 54 deletions(-)
 create mode 100644 Documentation/filesystems/fuse/fuse-caches.rst
 create mode 100644 tools/testing/selftests/filesystems/fuse/fuse_readdir_cache_test.c
 create mode 100644 tools/testing/selftests/filesystems/fuse/fuse_symlink_cache_test.c
Re: [RFC PATCH v2 0/8] fuse: caches documentation and testing
Posted by Amir Goldstein 1 month, 1 week ago
On Mon, Aug 17, 2026 at 4:11 PM Luis Henriques <luis@igalia.com> wrote:
>
> Hi!
>
> I'm (finally!) sending v2 of this patchset.  It tries to document (and add
> a few kselftests) to the different types of caches that are currently in use
> within FUSE.  As I mentioned in v1 the idea for documenting this came from
> Miklos during this year's LSFMM, where he mentioned he would like to see
> caches usage documented before he could merge an initial version of fusex.
>
> This version documents symlinks, attributes, ACLs and readdir caches.  Still
> missing: dentries and data caching.
>
> I'm still sending it as an RFC as I'm still not sure if it fulfils Miklos'
> initial goal.
>
> As usual feedback is welcome, as I'll (slowly) continue looking into other
> cache types.
>
> Major changes since v1:
> - Added more caches to the document
> - Changed tests format to single self-contained binaries
> - Since Amir added a new fuse3-based test, the conversion to fuse3 of the
>   fusectl has minor changes to the Makefile
>   - NOTE: I've kept Amir's Reviewed-by anyway (should I drop it?)

It's fine. I trust your judgement.

Please see Sashiko review comments.

My main concern is with the doc - it's not an easy read
and I would have liked it to be and I found many correctness error
which is not a good sign.

Thanks,
Amir.
Re: [RFC PATCH v2 0/8] fuse: caches documentation and testing
Posted by Luis Henriques 1 month, 1 week ago
On Tue, Aug 18 2026, Amir Goldstein wrote:

> On Mon, Aug 17, 2026 at 4:11 PM Luis Henriques <luis@igalia.com> wrote:
>>
>> Hi!
>>
>> I'm (finally!) sending v2 of this patchset.  It tries to document (and add
>> a few kselftests) to the different types of caches that are currently in use
>> within FUSE.  As I mentioned in v1 the idea for documenting this came from
>> Miklos during this year's LSFMM, where he mentioned he would like to see
>> caches usage documented before he could merge an initial version of fusex.
>>
>> This version documents symlinks, attributes, ACLs and readdir caches.  Still
>> missing: dentries and data caching.
>>
>> I'm still sending it as an RFC as I'm still not sure if it fulfils Miklos'
>> initial goal.
>>
>> As usual feedback is welcome, as I'll (slowly) continue looking into other
>> cache types.
>>
>> Major changes since v1:
>> - Added more caches to the document
>> - Changed tests format to single self-contained binaries
>> - Since Amir added a new fuse3-based test, the conversion to fuse3 of the
>>   fusectl has minor changes to the Makefile
>>   - NOTE: I've kept Amir's Reviewed-by anyway (should I drop it?)
>
> It's fine. I trust your judgement.
>
> Please see Sashiko review comments.

Sure, I will do that.  (For some reason I assumed I would receive an email
if there was a review for my patches.  Looks like that's not the case.)

> My main concern is with the doc - it's not an easy read
> and I would have liked it to be and I found many correctness error
> which is not a good sign.

Hmm... OK, I'll need to go through those errors and try my best to see if
I can fix them.

Thanks a lot for your feedback, Amir.  Much appreciated.

Cheers,
-- 
Luís