Module Name: src Committed By: manu Date: Wed Sep 29 08:01:11 UTC 2010
Modified Files: src/lib/libperfuse: debug.c ops.c perfuse.c perfuse_priv.h subr.c Log Message: = Open files = - Restore open on our own in fsycn and readdir, as the node may not already be open, and FUSE really wants it to be. No need to close immediatly, it can be done at inactive time. = Write operations = - fix a nasty bug that corrupted files on write (written added twice) - Keep track of file size in order to honour PUFFS_IO_APPEND = many fixes in rename = - handler overwritten nodes correctly - wait for all operations on the node to drain before doing rename, as filesystems may not cope with operations on a moving file. - setback PUFFS_SETBACK_INACT_N1 cannot be used from rename, we therefore miss the inactive time for an overwritten node. This bounds us to give up PUFFS_KFLAG_IAONDEMAND. = Removed files = - forbid most operations on a removed node, return ENOENT - setback PUFFS_SETBACK_NOREF_N1 at inactive stage to cause removed file reclaim = Misc = - Update outdated ARGSUSED for lint - Fix a memory leak (puffs_pn_remove instead of puffs_pn_put) - Do not use PUFFS_FLAG_BUILDPATH except for debug output. It makes the lookup code much simplier. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/lib/libperfuse/debug.c cvs rdiff -u -r1.17 -r1.18 src/lib/libperfuse/ops.c cvs rdiff -u -r1.8 -r1.9 src/lib/libperfuse/perfuse.c cvs rdiff -u -r1.12 -r1.13 src/lib/libperfuse/perfuse_priv.h cvs rdiff -u -r1.6 -r1.7 src/lib/libperfuse/subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.