]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
nfsd: fix decoder callback prototypes
authorChristoph Hellwig <hch@lst.de>
Mon, 8 May 2017 13:04:45 +0000 (15:04 +0200)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Thu, 13 Jul 2017 19:57:55 +0000 (15:57 -0400)
Declare the p_decode callbacks with the proper prototype instead of
casting to kxdrdproc_t and losing all type safety.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
fs/nfsd/nfs4callback.c

index bede418237ee7709e2949307f39d52764315d23d..a2bedbd05b2bf76d97301e06e776cae0d85fb91f 100644 (file)
@@ -513,8 +513,9 @@ static int nfs4_xdr_dec_cb_null(struct rpc_rqst *req, struct xdr_stream *xdr,
  */
 static int nfs4_xdr_dec_cb_recall(struct rpc_rqst *rqstp,
                                  struct xdr_stream *xdr,
-                                 struct nfsd4_callback *cb)
+                                 void *data)
 {
+       struct nfsd4_callback *cb = data;
        struct nfs4_cb_compound_hdr hdr;
        int status;
 
@@ -604,8 +605,9 @@ static void nfs4_xdr_enc_cb_layout(struct rpc_rqst *req,
 
 static int nfs4_xdr_dec_cb_layout(struct rpc_rqst *rqstp,
                                  struct xdr_stream *xdr,
-                                 struct nfsd4_callback *cb)
+                                 void *data)
 {
+       struct nfsd4_callback *cb = data;
        struct nfs4_cb_compound_hdr hdr;
        int status;
 
@@ -662,8 +664,9 @@ static void nfs4_xdr_enc_cb_notify_lock(struct rpc_rqst *req,
 
 static int nfs4_xdr_dec_cb_notify_lock(struct rpc_rqst *rqstp,
                                        struct xdr_stream *xdr,
-                                       struct nfsd4_callback *cb)
+                                       void *data)
 {
+       struct nfsd4_callback *cb = data;
        struct nfs4_cb_compound_hdr hdr;
        int status;
 
@@ -686,7 +689,7 @@ static int nfs4_xdr_dec_cb_notify_lock(struct rpc_rqst *rqstp,
 [NFSPROC4_CLNT_##proc] = {                                             \
        .p_proc    = NFSPROC4_CB_##call,                                \
        .p_encode  = nfs4_xdr_enc_##argtype,            \
-       .p_decode  = (kxdrdproc_t)nfs4_xdr_dec_##restype,               \
+       .p_decode  = nfs4_xdr_dec_##restype,                            \
        .p_arglen  = NFS4_enc_##argtype##_sz,                           \
        .p_replen  = NFS4_dec_##restype##_sz,                           \
        .p_statidx = NFSPROC4_CB_##call,                                \