[Question] getdents() calls use very small buffer when FUSE mount Hello all! I am currently working on a FUSE filesystem where a directory can contain a large amount of entries. When running `strace ls` I can see a lot of calls to getdents64() but with *very* small buffer: getdents64(3, /* 19 entries */, 32768) = 1368 getdents64(3, /* 19 entries */, 32768) = 1368 getdents64(3, /* 19 entries */, 32768) = 1368 getdents64(3, /* 19 entries */, 32768) = 1368 getdents64(3, /* 19 entries */, 32768) = 1368 getdents64(3, /* 19 entries */, 32768) = 1368 getdents64(3, /* 19 entries */, 32768) = 1368 ... This is completely killing the performances of the filesystem and I was wondering what causes such buffer size limitation? I stumbled upon a few posts, like this one: https://bugzilla.redhat.com/show_bug.cgi?id=1478411 about the same kind of problem, however I am not sure whether there is still a pending patch somewhere or a particular option to set in order to fix this issue? My system is: - Debian GNU/Linux bullseye/sid (testing) - Linux kernel 5.8.0-2-amd64 (x86-64) - libfuse 3.10.0 Thanks in advance for your insights. Sincerely,