Created attachment 18958 [details] Patch for source3/modules/vfs_fruit.c — fruit_get_bandsize: replace VFS I/O with POSIX to avoid SMB2 H-lease break (git apply or patch -p1 < vfs_fruit_posix_io.patch) I've been chasing TM backup failures (Proxmox, U-Green DXP NAS, ZFS), where large initial backups died every time with this in the log: lease break timed out for file MBPP.sparsebundle/Info.plist Tracked it down to fruit_get_bandsize opening Info.plist via SMB_VFS_NEXT_CREATE_FILE with INTERNAL_OPEN_ONLY. Despite the flag name, this still fires an H-lease break at the active TM session. When TM is busy writing bands it doesn't respond in time and the backup dies. At first I thought that ZFS breaks it, but in my opinion, with ZFS the write latency just makes it worse - how ever, the race, I assume, is in Samba, and not the filesystem. Fix: plist is already an absolute path at that point, no reason to go through VFS at all. Replacing the whole LSTAT + CREATE_FILE + PREAD + close_file_free block with stat/open/pread/close bypasses the lease machinery entirely. Patch attached. Running since April on 4.23.1, rebuilt against 4.23.3 last week, no timeouts since. Before the patch I couldn't finish a single large backup. Probably affects 4.24.x too.