NFSv4: After upgrade to 9 users can no longer list files. (sounds like a ZFS issue?)

George Liaskos geo.liaskos at gmail.com
Wed Aug 31 00:17:58 UTC 2011


> You could try this patch and see what effect it has (applied to the
> server). It just disables the access check for readdir.
> --- nfs_nfsdport.c.sav2 2011-08-30 10:35:58.000000000 -0400
> +++ nfs_nfsdport.c      2011-08-30 10:36:54.000000000 -0400
> @@ -1838,10 +1838,12 @@ nfsrvd_readdirplus(struct nfsrv_descript
>                nd->nd_repstat = NFSERR_NOTDIR;
>        if (!nd->nd_repstat && cnt == 0)
>                nd->nd_repstat = NFSERR_TOOSMALL;
> +#ifdef notnow
>        if (!nd->nd_repstat)
>                nd->nd_repstat = nfsvno_accchk(vp, VEXEC,
>                    nd->nd_cred, exp, p, NFSACCCHK_NOOVERRIDE,
>                    NFSACCCHK_VPISLOCKED, NULL);
> +#endif
>        if (nd->nd_repstat) {
>                vput(vp);
>                if (nd->nd_flag & ND_NFSV3)
>
> This wouldn't be suitable for a production system, but whether or
> not it "fixes" the problem would give us an indication of where the
> problem is.
>
> Also, if you could clarify when your 8/stable was downloaded, whether
> your 9.0 upgrade was to vanilla Beta1 or ??? and details w.r.t. your
> ZFS setup, that might help.

I use svn, unfortunately i don't remember exactly when i moved from
8.2 to stable. I synced with CURRENT last week and this issue
appeared, i did a second update to beta 2 [r225237] with the same results.

The patch didn't make any difference. I downloaded an ISO with BETA-1 and
made a VM installation, i was not able to reproduce this.

Updated one of the clients to r225237, setup some nfs exports on top of ZFS
and ls does not work for non root users. I created a new pool on top
of a memory fs
to test this.

Next, i "downgraded" the server to BETA-1 [r224413] and everything is
back to normal.
So there's a bug which was introduced somewhere between BETA-1 && BETA-2 :p

Thank you for your help!

Regards,
George


More information about the freebsd-fs mailing list