Module Name: src Committed By: manu Date: Fri Sep 9 15:45:28 UTC 2011
Modified Files: src/lib/libperfuse: ops.c perfuse_if.h perfuse_priv.h src/usr.sbin/perfused: Makefile perfused.c Log Message: Serialize access to file size. We already have such a thing in the kernel, where it fixes race for PUFFS filesystems, but we need it again in perfused since FUSE filesystems are allowed to reorder requests. The huge issue is in the asyncrhonous SETATTR sent by fsync. It is followed by a syncrhnous FSYNC, so if the filesystem does not reorder requests, once the FSYNC returns, we are confident the SETATTR is done. But since FUSE can reorder, we need to implement sync in perfused. To generate a diff of this commit: cvs rdiff -u -r1.39 -r1.40 src/lib/libperfuse/ops.c cvs rdiff -u -r1.15 -r1.16 src/lib/libperfuse/perfuse_if.h cvs rdiff -u -r1.21 -r1.22 src/lib/libperfuse/perfuse_priv.h cvs rdiff -u -r1.3 -r1.4 src/usr.sbin/perfused/Makefile cvs rdiff -u -r1.14 -r1.15 src/usr.sbin/perfused/perfused.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.