On Tue, 12 Aug 2025 at 22:44, Joanne Koong <joannelkoong@xxxxxxxxx> wrote: > My understanding is that it's because in that path it uses cached stat > values instead of fetching with another statx call to the server so it > has to reflect the blocksize the server previously set. It took me a > while to realize that the blocksize the server reports to the client > is unrelated to whatever blocksize the kernel internally uses for the > inode since the kernel doesn't do any block i/o for fuse; the commit > message in commit 0e9663ee452ff ("fuse: add blksize field to > fuse_attr") says the blocksize attribute is if "the filesystem might > want to give a hint to the app about the optimal I/O size". Right, that's what POSIX says: st_blksize A file system-specific preferred I/O block size for this object. In some file system types, this may vary from file to file. Thanks, Miklos