Hey Miklos, At the FS workshop, I came up with an idea that will fix the crash-during-copyup bug and also allow atomic creation of whiteouts/fallthrus/opaque flags using xattrs, as you proposed. Instead of ->whiteout() and ->fallthru(), we add just one new file system op, ->get_unlinked_inode(), which returns an inode that is allocated but not linked into the namespace - basically, ->create() followed by ->unlink() without a window in which the partly initialized file will be visible if the system crashes. This is usually already implemented internally by the file system, just not exported, so it should be minimally invasive. Then we can copy up data, set owner, set the whiteout xattr, etc. and when the inode is consistent, link it into the namespace. Currently, whiteouts and fallthrus are implemented with an in-dentry flag so there is no crash-atomicity problem, but there will be with the xattr-based version. So, if the ->get_unlinked_inode() based version works out, I would be very interested in seeing your whiteout/opaque/fallthru via xattrs implementation and merging it into my tree. Thanks, -VAL -- 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