[nfsv4] Server-side NFSv4 ACL support

Bryce Harrington bryce at osdl.org
Tue Aug 22 21:25:37 EDT 2006


On Wed, Aug 16, 2006 at 12:22:58AM -0400, J. Bruce Fields wrote:
> I've actually got some code for number 2 (very new and as yet
> untested...), in the nfsd-acl branch of my git repository, at
> 
> 	git://linux-nfs.org/~bfields/linux.git
> 
> Or if you don't want to fool with git you can browse the patches at
> 
> 	http://linux-nfs.org/cgi-bin/gitweb.cgi?p=bfields-2.6.git;a=shortlog;h=nfsd-acl
> 
> I could use any help testing and debugging it.

Hi Bruce,

I've added this branch to Crucible and run a few tests against it:

  http://crucible.osdl.org/runs/branches.html

1.  Connectathon fails on the Xeon with this error:

http://crucible.osdl.org/runs/1511/test_output/cthon.sys.log

  Small Compile
  ./stat: no data in smcomp.time
  general tests failed
  Tests failed, leaving /mnt/nfs12 mounted

On our P4 x86 it didn't hit this error (it hit the holey file issue
instead).

2.  NewPyNFS shows some differences for x86, compared with the
    nfs-server-stable branch:

 nfsd-acl:           http://crucible.osdl.org/runs/1510/test_output/newpynfs.sys.log
 nfs-server-stable:  http://crucible.osdl.org/runs/1587/test_output/newpynfs.sys.log

 CID4     st_setclientid.testAllCases                              : FAILURE
-           operation OP_SETCLIENTID_CONFIRM should return
-           NFS4_OK, instead got NFS4ERR_CLID_INUSE
+           OP_SETCLIENTID should return NFS4_OK, instead got
+           NFS4ERR_INVAL

-CIDCF3   st_setclientidconfirm.testAllCases                       : PASS
+CIDCF3   st_setclientidconfirm.testAllCases                       : FAILURE
+           operation OP_SETCLIENTID_CONFIRM should return
+           NFS4_OK, instead got NFS4ERR_CLID_INUSE

-LKT2b    st_lockt.testBlock                                       : FAILURE
-           operation OP_SETCLIENTID_CONFIRM should return
-           NFS4_OK, instead got NFS4ERR_CLID_INUSE
+LKT2b    st_lockt.testBlock                                       : PASS

-OPEN7b   st_open.testBlock                                        : FAILURE
-           operation OP_SETCLIENTID_CONFIRM should return
-           NFS4_OK, instead got NFS4ERR_CLID_INUSE
+OPEN7b   st_open.testBlock                                        : PASS

The results for the xeon64 system appear similar.

3.  Iozone performance looks almost identical with nfs-server-stable,
    however, one thing to call attention to is in the iozone plot for
    run 1510, that you'll notice the read performance dips below the
    write performance for 1000mB file sizes, for record sizes around and
    above 256kB.

    Jason thinks this may be related to memory size, so is going to
    attempt a run with less memory enabled and see what happens.
 
> In general we could probably use better testing--tests of how acls are
> enforced, how they're inherited, etc.

There is an ACL test I mentioned once before, that Bull created...

   http://linux-nfs.org/pipermail/nfsv4/2006-February/003578.html

If that looks useful, I can hook that into Crucible as well.

Bryce


More information about the NFSv4 mailing list