--- fs/nfsclient/nfs_clcomsubs.c.sav 2011-06-11 18:58:56.000000000 -0400 +++ fs/nfsclient/nfs_clcomsubs.c 2011-11-14 12:07:23.000000000 -0500 @@ -62,7 +62,7 @@ static struct { { NFSV4OP_SETATTR, 2, "Setattr", 7, }, { NFSV4OP_LOOKUP, 3, "Lookup", 6, }, { NFSV4OP_ACCESS, 2, "Access", 6, }, - { NFSV4OP_READLINK, 2, "Readlink", 8, }, + { NFSV4OP_READLINK, 1, "Readlink", 8, }, { NFSV4OP_READ, 1, "Read", 4, }, { NFSV4OP_WRITE, 2, "Write", 5, }, { NFSV4OP_OPEN, 3, "Open", 4, }, --- fs/nfsclient/nfs_clrpcops.c.sav 2011-11-14 12:03:18.000000000 -0500 +++ fs/nfsclient/nfs_clrpcops.c 2011-11-14 12:19:16.000000000 -0500 @@ -1164,11 +1164,14 @@ nfsrpc_readlink(vnode_t vp, struct uio * u_int32_t *tl; struct nfsrv_descript nfsd, *nd = &nfsd; struct nfsnode *np = VTONFS(vp); +#ifdef notnow nfsattrbit_t attrbits; - int error, len, cangetattr = 1; +#endif + int error, len, cangetattr = 0; *attrflagp = 0; NFSCL_REQSTART(nd, NFSPROC_READLINK, vp); +#ifdef notnow if (nd->nd_flag & ND_NFSV4) { /* * And do a Getattr op. @@ -1178,6 +1181,7 @@ nfsrpc_readlink(vnode_t vp, struct uio * NFSGETATTR_ATTRBIT(&attrbits); (void) nfsrv_putattrbit(nd, &attrbits); } +#endif error = nfscl_request(nd, vp, p, cred, stuff); if (error) return (error);