phdeniel/nfs-ganesha — pull request #76 by lieb (2012-03-24 21:33:34+00:00)
Title: New handle

Please review and pull branch new_handle.
This has been rebased on origin/next as of Friday 3/23 and built for VFS, XFS, and GPFS.
Thanks to Max for the XFS work and JV for the GPFS code.

Notes
--------
* Tested correct under VFS (git clone + git commands + rm -rf).

* Tested XFS under same conditions. Git clone works except "modified" files present
that should not be there. The rm -rf test and other git commands do work as expected.
This behavior was also seen on origin/next.

* GPFS compiles. However, it did require the top commit ("Fix GPFS fsal Build" e3a420ffd2)
to build correctly. I also had to explicitly set "--enable-up_fsal" even though it
appeared that --with-fsal=GPFS was supposed to automatically set it.

* None of the other FSALs will either compile or work.

--------
The rebase on origin/next which includes Adam's cache inode fixes as well as Max's XFS
symlink fixes.

The first two patches in this set ("Fix function prototype ..." and
"Cleanup and fixes to up call handlers") are from JV, refactored out by me to be
separate from new_handle. They should be pulled on their own merit.

The HEAD patch mentioned above should be reviewed and signed off by IBM since it is
their code/build. Something is not right about the automatic turn-on of UP_FSAL as
well. I suggest it be removed as an option and that it stubs off properly at runtime
for FSALs that do not have an upcall need/capability.

This patch set has some core new_handle patches submitted by JV. Thanks JV. They have
been rebased into the patch stream right after my commits. In addition, I did some
minor fixes based on list comments as well as a syntax change to one of JV's patches.

Please review and merge to origin/next. Submitting the CEPH port patches before or
after the rebase and pull request of their cache inode and hashtable changes is their call.
I can do edit/compile changes to the other FSALs (ZFS, LUSTRE, etc.) but cannot test
them. The changes are pretty simple. Max and JV have done two of the more important
ones already. I'd really like to get back to new api. One other option is to mark them
as temporarily out of service on origin/next and get on with the new api, adding them back
as new api enabled FSALs.

Jim