lockd: fix decoder callback prototypes
authorChristoph Hellwig <hch@lst.de>
Mon, 8 May 2017 13:06:20 +0000 (15:06 +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>
Acked-by: Trond Myklebust <trond.myklebust@primarydata.com>
fs/lockd/clnt4xdr.c
fs/lockd/clntxdr.c
fs/lockd/mon.c

index 3cbad66..f0ab7a9 100644 (file)
@@ -533,8 +533,9 @@ out:
 
 static int nlm4_xdr_dec_testres(struct rpc_rqst *req,
                                struct xdr_stream *xdr,
-                               struct nlm_res *result)
+                               void *data)
 {
+       struct nlm_res *result = data;
        int error;
 
        error = decode_cookie(xdr, &result->cookie);
@@ -553,8 +554,9 @@ out:
  */
 static int nlm4_xdr_dec_res(struct rpc_rqst *req,
                            struct xdr_stream *xdr,
-                           struct nlm_res *result)
+                           void *data)
 {
+       struct nlm_res *result = data;
        int error;
 
        error = decode_cookie(xdr, &result->cookie);
@@ -575,7 +577,7 @@ out:
 [NLMPROC_##proc] = {                                                   \
        .p_proc      = NLMPROC_##proc,                                  \
        .p_encode    = nlm4_xdr_enc_##argtype,                          \
-       .p_decode    = (kxdrdproc_t)nlm4_xdr_dec_##restype,             \
+       .p_decode    = nlm4_xdr_dec_##restype,                          \
        .p_arglen    = NLM4_##argtype##_sz,                             \
        .p_replen    = NLM4_##restype##_sz,                             \
        .p_statidx   = NLMPROC_##proc,                                  \
index 825c0fd..17e7f08 100644 (file)
@@ -531,8 +531,9 @@ out:
 
 static int nlm_xdr_dec_testres(struct rpc_rqst *req,
                               struct xdr_stream *xdr,
-                              struct nlm_res *result)
+                              void *data)
 {
+       struct nlm_res *result = data;
        int error;
 
        error = decode_cookie(xdr, &result->cookie);
@@ -551,8 +552,9 @@ out:
  */
 static int nlm_xdr_dec_res(struct rpc_rqst *req,
                           struct xdr_stream *xdr,
-                          struct nlm_res *result)
+                          void *data)
 {
+       struct nlm_res *result = data;
        int error;
 
        error = decode_cookie(xdr, &result->cookie);
@@ -573,7 +575,7 @@ out:
 [NLMPROC_##proc] = {                                                   \
        .p_proc      = NLMPROC_##proc,                                  \
        .p_encode    = nlm_xdr_enc_##argtype,           \
-       .p_decode    = (kxdrdproc_t)nlm_xdr_dec_##restype,              \
+       .p_decode    = nlm_xdr_dec_##restype,                           \
        .p_arglen    = NLM_##argtype##_sz,                              \
        .p_replen    = NLM_##restype##_sz,                              \
        .p_statidx   = NLMPROC_##proc,                                  \
index 8043fd4..80630f0 100644 (file)
@@ -490,8 +490,9 @@ static void nsm_xdr_enc_unmon(struct rpc_rqst *req, struct xdr_stream *xdr,
 
 static int nsm_xdr_dec_stat_res(struct rpc_rqst *rqstp,
                                struct xdr_stream *xdr,
-                               struct nsm_res *resp)
+                               void *data)
 {
+       struct nsm_res *resp = data;
        __be32 *p;
 
        p = xdr_inline_decode(xdr, 4 + 4);
@@ -507,8 +508,9 @@ static int nsm_xdr_dec_stat_res(struct rpc_rqst *rqstp,
 
 static int nsm_xdr_dec_stat(struct rpc_rqst *rqstp,
                            struct xdr_stream *xdr,
-                           struct nsm_res *resp)
+                           void *data)
 {
+       struct nsm_res *resp = data;
        __be32 *p;
 
        p = xdr_inline_decode(xdr, 4);
@@ -533,7 +535,7 @@ static struct rpc_procinfo  nsm_procedures[] = {
 [NSMPROC_MON] = {
                .p_proc         = NSMPROC_MON,
                .p_encode       = nsm_xdr_enc_mon,
-               .p_decode       = (kxdrdproc_t)nsm_xdr_dec_stat_res,
+               .p_decode       = nsm_xdr_dec_stat_res,
                .p_arglen       = SM_mon_sz,
                .p_replen       = SM_monres_sz,
                .p_statidx      = NSMPROC_MON,
@@ -542,7 +544,7 @@ static struct rpc_procinfo  nsm_procedures[] = {
 [NSMPROC_UNMON] = {
                .p_proc         = NSMPROC_UNMON,
                .p_encode       = nsm_xdr_enc_unmon,
-               .p_decode       = (kxdrdproc_t)nsm_xdr_dec_stat,
+               .p_decode       = nsm_xdr_dec_stat,
                .p_arglen       = SM_mon_id_sz,
                .p_replen       = SM_unmonres_sz,
                .p_statidx      = NSMPROC_UNMON,