We always flush data out of the local cache on any set attribute change (see line 2434 of fs/cifs/inode.c) rc = filemap_write_and_wait(inode->i_mapping); which seems too aggressive since it only needs to be done on ATTR_SIZE and ATTR_MTIME changes. With Ronnie's recent patch we also do an smb3 flush request when last write time changes (to work around the problem where the timestamps (set e.g. by "cp -p") can be reset to current time on close otherwise. -- Thanks, Steve