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

Reply via email to