On Thu, 7 Aug 2025 at 19:51, Joanne Koong <joannelkoong@xxxxxxxxx> wrote: > > With fuse now using iomap for writeback handling, inode blkbits changes > are problematic because iomap relies on inode->i_blkbits for its > internal bitmap logic. Currently we change inode->i_blkbits in fuse to > match the attr->blksize value passed in by the server. > > This commit keeps inode->i_blkbits constant in fuse. Any attr->blksize > values passed in by the server will not update inode->i_blkbits. The > client-side behavior for stat is unaffected, stat will still reflect the > blocksize passed in by the server. Not quite. You also need to save ilog2(attr->blksize) in fi->orig_i_blkbits and restore it after calling generic_fillattr() in fuse_update_get_attr() just like it's done for i_mode and i_ino. Thanks, Miklos