Hi, I was working on [1] (related to [2]), and I saw that both versions (C and rust) of virtiofsd make the NFs client to "silly rename" an open file that were unlinked, because we keep each file open as O_PATH in the lo_do_lookup/do_lookup function. David pointed me to this problem, and I confirmed that this is the case.
This fires the silly rename in the nfs client. I'm talking with Bruce Fields (nfs team) to see how to move the silly rename functionality to the nfs server and outside the directory tree [4], to avoid having non-really-empty dirs full of .nfsxxx files. But it is not an easy task. Also, this will not solve some potential issues with the resource usage: disk space and open file limits (I hit this limit a couple of times during my tests). And, in some cases could be worst, more than one guest sharing the same exported dir, one guest just 'ls' or 'find' while the other 'rm' some files. (The 'find' command will open all files, btw) Vivek, I saw in [5] that you mentioned that this could be fixed introducing synchronous, could you elaborate a bit or point me to some code? Thanks, [1] https://bugzilla.redhat.com/show_bug.cgi?id=2018072 [2] https://bugzilla.redhat.com/show_bug.cgi?id=1908490 [4] https://wiki.linux-nfs.org/wiki/index.php/Server-side_silly_rename [5] https://sourceforge.net/p/fuse/mailman/fuse-devel/?viewmonth=202101&viewday=4 -- German
_______________________________________________ Virtio-fs mailing list [email protected] https://listman.redhat.com/mailman/listinfo/virtio-fs
