While working on this, I discovered some things that need to be done... NFS v4 rename and link do not check for xdev...
I'm not sure that when the NFS v4 SavedFH is cleaned up (either being replaced, or released at end of compound) that it is cleaned up with the correct op_ctx, will check that and fix if not. 9P doesn't check for xdev in rename or link. I need to check that 9P sets a proper op_ctx when releasing object references (aka LRU references when MDCACHE is involved...). Rename isn't prevented from overwriting a junction. This would require fsal_rename to do a lookup on the target name (at which point we might as well pass the target object if any down to the FSAL for mdcache consumption...). If that is protected from overwriting a junction, then there is no risk of having the wrong op_ctx for cleanup. Hmm, I also need to make sure that NFS v3 and 9P junction crossing is done in a way that is unexport safe... This stuff probably didn't cause problems before MDCACHE because cache inode entry cleanup wasn't actually dependent on the proper export in op_ctx... Either that or no one did enough testing... Frank --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Nfs-ganesha-devel mailing list Nfs-ganesha-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel