equal
deleted
inserted
replaced
56 |
56 |
57 /* |
57 /* |
58 * XXX nfs4_fid() does nothing and returns EREMOTE. |
58 * XXX nfs4_fid() does nothing and returns EREMOTE. |
59 * XXX nfs3_fid()/nfs_fid() returns nfs filehandle as its fid |
59 * XXX nfs3_fid()/nfs_fid() returns nfs filehandle as its fid |
60 * which has a bigger length than local fid. |
60 * which has a bigger length than local fid. |
61 * NFS_FHMAXDATA is the size of fhandle_t.fh_xdata[NFS_FHMAXDATA]. |
61 * NFS_FHMAXDATA_EXT is the size of |
62 */ |
62 * fhandle_ext_t.fh_xdata[NFS_FHMAXDATA_EXT]. |
63 if (error == EREMOTE || (error == 0 && fidp->fid_len > NFS_FHMAXDATA)) { |
63 * |
|
64 * Note: nfs[2,3,4]_fid() only gets called for diskless clients. |
|
65 */ |
|
66 if (error == EREMOTE || |
|
67 (error == 0 && fidp->fid_len > NFS_FHMAXDATA_EXT)) { |
64 |
68 |
65 va.va_mask = AT_NODEID; |
69 va.va_mask = AT_NODEID; |
66 error = VOP_GETATTR(vp, &va, 0, CRED()); |
70 error = VOP_GETATTR(vp, &va, 0, CRED()); |
67 if (error) |
71 if (error) |
68 return (error); |
72 return (error); |