> On 2011-Apr-25 20:33:14 -0400, Rick Macklem <rmacklem_at_uoguelph.ca> > wrote: > >I believe that the new/experimental NFS client in head is now > >compatible with the old/regular NFS client. > > Possibly even too compatible... > > Both the old and new NFS clients assume a 1:1 mapping between NFS > error codes (NFSERR_* macros defined in <nfs/nfsproto.h>) and the E* > macros in <sys/errno.h>: In the old client, the NFS status is copied > from the RPC response by nfsclient/nfs_krpc.c:nfs_request(), returned > and passed back up the call chain. In the new client, the status is > copied from the RPC response into struct nfsrv_descript.nd_repstat > by fs/nfs/nfs_commonkrpc.c:newnfs_request() and then moved into an > error return in fs/nfsclient/nfs_clrpcops.c:nfsrpc_*(). > > This is not currently a problem but it would seem useful to include > notes in <nfs/nfsproto.h> and <sys/errno.h> warning of this assumption > in case of future changes. > > Note that both NFS servers do include code for error code mapping. > I guess that a comment might be in order. I know that the NFS ones will never change, since they're wired into the RFCs. I doubt anyone has an urge to renumber errno.h (the ones up to about 70), but a comment w.r.t. that in nfsproto.h could be useful. Thanks for the good suggestion, rickReceived on Wed May 04 2011 - 19:06:04 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:13 UTC