hooanon05@xxxxxxxxxxx writes: > Goswin von Brederlow: >> For unlink and rmdir you need whiteout files. >> >> For all the rest you just have to keep the file descriptor(s) alive as >> long as the file is opened and cache metadat in the internal FD >> structure. >> >> It isn't trivial but it isn't really hard. > > Generally it is true. > Actually deltafs already has something like whiteout. It is a symlink to > "(null)". > When a user writes something to the file after unlink+rmdir, where can > deltafs copyup? At least in the current implementation, there is no > place for it. > > > J. R. Okajima In the delta branch create a meta/ and files/ directory. In the meta/ directory you keep whiteout files and stat updates. In files/ you store only changes in the file data itself. So "rm foo/bar/baz" will create meta/foo/bar/baz.whiteout. Then "echo blafase >>foo/bar/baz" first searches for a file to copy-up, sees the meta/foo/bar/baz.whiteout and knows the file was deleted. It then creates a new files/foo/bar/baz. It might have to copy-up foo and foo/bar for that though. MfG Goswin -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html