NFS: Use the "nfs_stat" enum for nfs_stat_to_errno()'s argument
Clean up. To distinguish more clearly between the on-the-wire NFSERR_ value and our local errno values, use the proper type for the argument of nfs_stat_to_errno(). Add a documenting comment appropriate for a global function shared outside this source file. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Tested-by: J. Bruce Fields <bfields@redhat.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
committed by
Trond Myklebust
parent
282ac2a573
commit
8582849324
@@ -185,7 +185,7 @@ extern int __init nfs_init_directcache(void);
|
|||||||
extern void nfs_destroy_directcache(void);
|
extern void nfs_destroy_directcache(void);
|
||||||
|
|
||||||
/* nfs2xdr.c */
|
/* nfs2xdr.c */
|
||||||
extern int nfs_stat_to_errno(int);
|
extern int nfs_stat_to_errno(enum nfs_stat);
|
||||||
extern struct rpc_procinfo nfs_procedures[];
|
extern struct rpc_procinfo nfs_procedures[];
|
||||||
extern __be32 *nfs_decode_dirent(struct xdr_stream *, struct nfs_entry *, struct nfs_server *, int);
|
extern __be32 *nfs_decode_dirent(struct xdr_stream *, struct nfs_entry *, struct nfs_server *, int);
|
||||||
|
|
||||||
|
@@ -804,7 +804,7 @@ nfs_xdr_statfsres(struct rpc_rqst *req, __be32 *p, struct nfs2_fsstat *res)
|
|||||||
* We need to translate between nfs status return values and
|
* We need to translate between nfs status return values and
|
||||||
* the local errno values which may not be the same.
|
* the local errno values which may not be the same.
|
||||||
*/
|
*/
|
||||||
static struct {
|
static const struct {
|
||||||
int stat;
|
int stat;
|
||||||
int errno;
|
int errno;
|
||||||
} nfs_errtbl[] = {
|
} nfs_errtbl[] = {
|
||||||
@@ -844,20 +844,22 @@ static struct {
|
|||||||
{ -1, -EIO }
|
{ -1, -EIO }
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* Convert an NFS error code to a local one.
|
* nfs_stat_to_errno - convert an NFS status code to a local errno
|
||||||
* This one is used jointly by NFSv2 and NFSv3.
|
* @status: NFS status code to convert
|
||||||
|
*
|
||||||
|
* Returns a local errno value, or -EIO if the NFS status code is
|
||||||
|
* not recognized. This function is used jointly by NFSv2 and NFSv3.
|
||||||
*/
|
*/
|
||||||
int
|
int nfs_stat_to_errno(enum nfs_stat status)
|
||||||
nfs_stat_to_errno(int stat)
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0; nfs_errtbl[i].stat != -1; i++) {
|
for (i = 0; nfs_errtbl[i].stat != -1; i++) {
|
||||||
if (nfs_errtbl[i].stat == stat)
|
if (nfs_errtbl[i].stat == (int)status)
|
||||||
return nfs_errtbl[i].errno;
|
return nfs_errtbl[i].errno;
|
||||||
}
|
}
|
||||||
dprintk("nfs_stat_to_errno: bad nfs status return value: %d\n", stat);
|
dprintk("NFS: Unrecognized nfs status value: %u\n", status);
|
||||||
return nfs_errtbl[i].errno;
|
return nfs_errtbl[i].errno;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user