Commit fcc85819 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Anna Schumaker

nfs: fix encoder callback prototypes

Declare the p_encode callbacks with the proper prototype instead of
casting to kxdreproc_t and losing all type safety.
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarJeff Layton <jlayton@redhat.com>
Acked-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
parent d1607338
...@@ -304,7 +304,7 @@ static void encode_mntdirpath(struct xdr_stream *xdr, const char *pathname) ...@@ -304,7 +304,7 @@ static void encode_mntdirpath(struct xdr_stream *xdr, const char *pathname)
} }
static void mnt_xdr_enc_dirpath(struct rpc_rqst *req, struct xdr_stream *xdr, static void mnt_xdr_enc_dirpath(struct rpc_rqst *req, struct xdr_stream *xdr,
const char *dirpath) const void *dirpath)
{ {
encode_mntdirpath(xdr, dirpath); encode_mntdirpath(xdr, dirpath);
} }
...@@ -467,7 +467,7 @@ static int mnt_xdr_dec_mountres3(struct rpc_rqst *req, ...@@ -467,7 +467,7 @@ static int mnt_xdr_dec_mountres3(struct rpc_rqst *req,
static struct rpc_procinfo mnt_procedures[] = { static struct rpc_procinfo mnt_procedures[] = {
[MOUNTPROC_MNT] = { [MOUNTPROC_MNT] = {
.p_proc = MOUNTPROC_MNT, .p_proc = MOUNTPROC_MNT,
.p_encode = (kxdreproc_t)mnt_xdr_enc_dirpath, .p_encode = mnt_xdr_enc_dirpath,
.p_decode = (kxdrdproc_t)mnt_xdr_dec_mountres, .p_decode = (kxdrdproc_t)mnt_xdr_dec_mountres,
.p_arglen = MNT_enc_dirpath_sz, .p_arglen = MNT_enc_dirpath_sz,
.p_replen = MNT_dec_mountres_sz, .p_replen = MNT_dec_mountres_sz,
...@@ -476,7 +476,7 @@ static struct rpc_procinfo mnt_procedures[] = { ...@@ -476,7 +476,7 @@ static struct rpc_procinfo mnt_procedures[] = {
}, },
[MOUNTPROC_UMNT] = { [MOUNTPROC_UMNT] = {
.p_proc = MOUNTPROC_UMNT, .p_proc = MOUNTPROC_UMNT,
.p_encode = (kxdreproc_t)mnt_xdr_enc_dirpath, .p_encode = mnt_xdr_enc_dirpath,
.p_arglen = MNT_enc_dirpath_sz, .p_arglen = MNT_enc_dirpath_sz,
.p_statidx = MOUNTPROC_UMNT, .p_statidx = MOUNTPROC_UMNT,
.p_name = "UMOUNT", .p_name = "UMOUNT",
...@@ -486,7 +486,7 @@ static struct rpc_procinfo mnt_procedures[] = { ...@@ -486,7 +486,7 @@ static struct rpc_procinfo mnt_procedures[] = {
static struct rpc_procinfo mnt3_procedures[] = { static struct rpc_procinfo mnt3_procedures[] = {
[MOUNTPROC3_MNT] = { [MOUNTPROC3_MNT] = {
.p_proc = MOUNTPROC3_MNT, .p_proc = MOUNTPROC3_MNT,
.p_encode = (kxdreproc_t)mnt_xdr_enc_dirpath, .p_encode = mnt_xdr_enc_dirpath,
.p_decode = (kxdrdproc_t)mnt_xdr_dec_mountres3, .p_decode = (kxdrdproc_t)mnt_xdr_dec_mountres3,
.p_arglen = MNT_enc_dirpath_sz, .p_arglen = MNT_enc_dirpath_sz,
.p_replen = MNT_dec_mountres3_sz, .p_replen = MNT_dec_mountres3_sz,
...@@ -495,7 +495,7 @@ static struct rpc_procinfo mnt3_procedures[] = { ...@@ -495,7 +495,7 @@ static struct rpc_procinfo mnt3_procedures[] = {
}, },
[MOUNTPROC3_UMNT] = { [MOUNTPROC3_UMNT] = {
.p_proc = MOUNTPROC3_UMNT, .p_proc = MOUNTPROC3_UMNT,
.p_encode = (kxdreproc_t)mnt_xdr_enc_dirpath, .p_encode = mnt_xdr_enc_dirpath,
.p_arglen = MNT_enc_dirpath_sz, .p_arglen = MNT_enc_dirpath_sz,
.p_statidx = MOUNTPROC3_UMNT, .p_statidx = MOUNTPROC3_UMNT,
.p_name = "UMOUNT", .p_name = "UMOUNT",
......
...@@ -568,8 +568,10 @@ static int decode_diropres(struct xdr_stream *xdr, struct nfs_diropok *result) ...@@ -568,8 +568,10 @@ static int decode_diropres(struct xdr_stream *xdr, struct nfs_diropok *result)
static void nfs2_xdr_enc_fhandle(struct rpc_rqst *req, static void nfs2_xdr_enc_fhandle(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_fh *fh) const void *data)
{ {
const struct nfs_fh *fh = data;
encode_fhandle(xdr, fh); encode_fhandle(xdr, fh);
} }
...@@ -583,23 +585,29 @@ static void nfs2_xdr_enc_fhandle(struct rpc_rqst *req, ...@@ -583,23 +585,29 @@ static void nfs2_xdr_enc_fhandle(struct rpc_rqst *req,
*/ */
static void nfs2_xdr_enc_sattrargs(struct rpc_rqst *req, static void nfs2_xdr_enc_sattrargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_sattrargs *args) const void *data)
{ {
const struct nfs_sattrargs *args = data;
encode_fhandle(xdr, args->fh); encode_fhandle(xdr, args->fh);
encode_sattr(xdr, args->sattr); encode_sattr(xdr, args->sattr);
} }
static void nfs2_xdr_enc_diropargs(struct rpc_rqst *req, static void nfs2_xdr_enc_diropargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_diropargs *args) const void *data)
{ {
const struct nfs_diropargs *args = data;
encode_diropargs(xdr, args->fh, args->name, args->len); encode_diropargs(xdr, args->fh, args->name, args->len);
} }
static void nfs2_xdr_enc_readlinkargs(struct rpc_rqst *req, static void nfs2_xdr_enc_readlinkargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_readlinkargs *args) const void *data)
{ {
const struct nfs_readlinkargs *args = data;
encode_fhandle(xdr, args->fh); encode_fhandle(xdr, args->fh);
prepare_reply_buffer(req, args->pages, args->pgbase, prepare_reply_buffer(req, args->pages, args->pgbase,
args->pglen, NFS_readlinkres_sz); args->pglen, NFS_readlinkres_sz);
...@@ -632,8 +640,10 @@ static void encode_readargs(struct xdr_stream *xdr, ...@@ -632,8 +640,10 @@ static void encode_readargs(struct xdr_stream *xdr,
static void nfs2_xdr_enc_readargs(struct rpc_rqst *req, static void nfs2_xdr_enc_readargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_pgio_args *args) const void *data)
{ {
const struct nfs_pgio_args *args = data;
encode_readargs(xdr, args); encode_readargs(xdr, args);
prepare_reply_buffer(req, args->pages, args->pgbase, prepare_reply_buffer(req, args->pages, args->pgbase,
args->count, NFS_readres_sz); args->count, NFS_readres_sz);
...@@ -672,8 +682,10 @@ static void encode_writeargs(struct xdr_stream *xdr, ...@@ -672,8 +682,10 @@ static void encode_writeargs(struct xdr_stream *xdr,
static void nfs2_xdr_enc_writeargs(struct rpc_rqst *req, static void nfs2_xdr_enc_writeargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_pgio_args *args) const void *data)
{ {
const struct nfs_pgio_args *args = data;
encode_writeargs(xdr, args); encode_writeargs(xdr, args);
xdr->buf->flags |= XDRBUF_WRITE; xdr->buf->flags |= XDRBUF_WRITE;
} }
...@@ -688,16 +700,20 @@ static void nfs2_xdr_enc_writeargs(struct rpc_rqst *req, ...@@ -688,16 +700,20 @@ static void nfs2_xdr_enc_writeargs(struct rpc_rqst *req,
*/ */
static void nfs2_xdr_enc_createargs(struct rpc_rqst *req, static void nfs2_xdr_enc_createargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_createargs *args) const void *data)
{ {
const struct nfs_createargs *args = data;
encode_diropargs(xdr, args->fh, args->name, args->len); encode_diropargs(xdr, args->fh, args->name, args->len);
encode_sattr(xdr, args->sattr); encode_sattr(xdr, args->sattr);
} }
static void nfs2_xdr_enc_removeargs(struct rpc_rqst *req, static void nfs2_xdr_enc_removeargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_removeargs *args) const void *data)
{ {
const struct nfs_removeargs *args = data;
encode_diropargs(xdr, args->fh, args->name.name, args->name.len); encode_diropargs(xdr, args->fh, args->name.name, args->name.len);
} }
...@@ -711,8 +727,9 @@ static void nfs2_xdr_enc_removeargs(struct rpc_rqst *req, ...@@ -711,8 +727,9 @@ static void nfs2_xdr_enc_removeargs(struct rpc_rqst *req,
*/ */
static void nfs2_xdr_enc_renameargs(struct rpc_rqst *req, static void nfs2_xdr_enc_renameargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_renameargs *args) const void *data)
{ {
const struct nfs_renameargs *args = data;
const struct qstr *old = args->old_name; const struct qstr *old = args->old_name;
const struct qstr *new = args->new_name; const struct qstr *new = args->new_name;
...@@ -730,8 +747,10 @@ static void nfs2_xdr_enc_renameargs(struct rpc_rqst *req, ...@@ -730,8 +747,10 @@ static void nfs2_xdr_enc_renameargs(struct rpc_rqst *req,
*/ */
static void nfs2_xdr_enc_linkargs(struct rpc_rqst *req, static void nfs2_xdr_enc_linkargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_linkargs *args) const void *data)
{ {
const struct nfs_linkargs *args = data;
encode_fhandle(xdr, args->fromfh); encode_fhandle(xdr, args->fromfh);
encode_diropargs(xdr, args->tofh, args->toname, args->tolen); encode_diropargs(xdr, args->tofh, args->toname, args->tolen);
} }
...@@ -747,8 +766,10 @@ static void nfs2_xdr_enc_linkargs(struct rpc_rqst *req, ...@@ -747,8 +766,10 @@ static void nfs2_xdr_enc_linkargs(struct rpc_rqst *req,
*/ */
static void nfs2_xdr_enc_symlinkargs(struct rpc_rqst *req, static void nfs2_xdr_enc_symlinkargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_symlinkargs *args) const void *data)
{ {
const struct nfs_symlinkargs *args = data;
encode_diropargs(xdr, args->fromfh, args->fromname, args->fromlen); encode_diropargs(xdr, args->fromfh, args->fromname, args->fromlen);
encode_path(xdr, args->pages, args->pathlen); encode_path(xdr, args->pages, args->pathlen);
encode_sattr(xdr, args->sattr); encode_sattr(xdr, args->sattr);
...@@ -777,8 +798,10 @@ static void encode_readdirargs(struct xdr_stream *xdr, ...@@ -777,8 +798,10 @@ static void encode_readdirargs(struct xdr_stream *xdr,
static void nfs2_xdr_enc_readdirargs(struct rpc_rqst *req, static void nfs2_xdr_enc_readdirargs(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_readdirargs *args) const void *data)
{ {
const struct nfs_readdirargs *args = data;
encode_readdirargs(xdr, args); encode_readdirargs(xdr, args);
prepare_reply_buffer(req, args->pages, 0, prepare_reply_buffer(req, args->pages, 0,
args->count, NFS_readdirres_sz); args->count, NFS_readdirres_sz);
...@@ -1118,7 +1141,7 @@ static int nfs_stat_to_errno(enum nfs_stat status) ...@@ -1118,7 +1141,7 @@ static int nfs_stat_to_errno(enum nfs_stat status)
#define PROC(proc, argtype, restype, timer) \ #define PROC(proc, argtype, restype, timer) \
[NFSPROC_##proc] = { \ [NFSPROC_##proc] = { \
.p_proc = NFSPROC_##proc, \ .p_proc = NFSPROC_##proc, \
.p_encode = (kxdreproc_t)nfs2_xdr_enc_##argtype, \ .p_encode = nfs2_xdr_enc_##argtype, \
.p_decode = (kxdrdproc_t)nfs2_xdr_dec_##restype, \ .p_decode = (kxdrdproc_t)nfs2_xdr_dec_##restype, \
.p_arglen = NFS_##argtype##_sz, \ .p_arglen = NFS_##argtype##_sz, \
.p_replen = NFS_##restype##_sz, \ .p_replen = NFS_##restype##_sz, \
......
...@@ -846,8 +846,10 @@ static void encode_diropargs3(struct xdr_stream *xdr, const struct nfs_fh *fh, ...@@ -846,8 +846,10 @@ static void encode_diropargs3(struct xdr_stream *xdr, const struct nfs_fh *fh,
*/ */
static void nfs3_xdr_enc_getattr3args(struct rpc_rqst *req, static void nfs3_xdr_enc_getattr3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_fh *fh) const void *data)
{ {
const struct nfs_fh *fh = data;
encode_nfs_fh3(xdr, fh); encode_nfs_fh3(xdr, fh);
} }
...@@ -884,8 +886,9 @@ static void encode_sattrguard3(struct xdr_stream *xdr, ...@@ -884,8 +886,9 @@ static void encode_sattrguard3(struct xdr_stream *xdr,
static void nfs3_xdr_enc_setattr3args(struct rpc_rqst *req, static void nfs3_xdr_enc_setattr3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_sattrargs *args) const void *data)
{ {
const struct nfs3_sattrargs *args = data;
encode_nfs_fh3(xdr, args->fh); encode_nfs_fh3(xdr, args->fh);
encode_sattr3(xdr, args->sattr); encode_sattr3(xdr, args->sattr);
encode_sattrguard3(xdr, args); encode_sattrguard3(xdr, args);
...@@ -900,8 +903,10 @@ static void nfs3_xdr_enc_setattr3args(struct rpc_rqst *req, ...@@ -900,8 +903,10 @@ static void nfs3_xdr_enc_setattr3args(struct rpc_rqst *req,
*/ */
static void nfs3_xdr_enc_lookup3args(struct rpc_rqst *req, static void nfs3_xdr_enc_lookup3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_diropargs *args) const void *data)
{ {
const struct nfs3_diropargs *args = data;
encode_diropargs3(xdr, args->fh, args->name, args->len); encode_diropargs3(xdr, args->fh, args->name, args->len);
} }
...@@ -922,8 +927,10 @@ static void encode_access3args(struct xdr_stream *xdr, ...@@ -922,8 +927,10 @@ static void encode_access3args(struct xdr_stream *xdr,
static void nfs3_xdr_enc_access3args(struct rpc_rqst *req, static void nfs3_xdr_enc_access3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_accessargs *args) const void *data)
{ {
const struct nfs3_accessargs *args = data;
encode_access3args(xdr, args); encode_access3args(xdr, args);
} }
...@@ -936,8 +943,10 @@ static void nfs3_xdr_enc_access3args(struct rpc_rqst *req, ...@@ -936,8 +943,10 @@ static void nfs3_xdr_enc_access3args(struct rpc_rqst *req,
*/ */
static void nfs3_xdr_enc_readlink3args(struct rpc_rqst *req, static void nfs3_xdr_enc_readlink3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_readlinkargs *args) const void *data)
{ {
const struct nfs3_readlinkargs *args = data;
encode_nfs_fh3(xdr, args->fh); encode_nfs_fh3(xdr, args->fh);
prepare_reply_buffer(req, args->pages, args->pgbase, prepare_reply_buffer(req, args->pages, args->pgbase,
args->pglen, NFS3_readlinkres_sz); args->pglen, NFS3_readlinkres_sz);
...@@ -966,8 +975,10 @@ static void encode_read3args(struct xdr_stream *xdr, ...@@ -966,8 +975,10 @@ static void encode_read3args(struct xdr_stream *xdr,
static void nfs3_xdr_enc_read3args(struct rpc_rqst *req, static void nfs3_xdr_enc_read3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_pgio_args *args) const void *data)
{ {
const struct nfs_pgio_args *args = data;
encode_read3args(xdr, args); encode_read3args(xdr, args);
prepare_reply_buffer(req, args->pages, args->pgbase, prepare_reply_buffer(req, args->pages, args->pgbase,
args->count, NFS3_readres_sz); args->count, NFS3_readres_sz);
...@@ -1008,8 +1019,10 @@ static void encode_write3args(struct xdr_stream *xdr, ...@@ -1008,8 +1019,10 @@ static void encode_write3args(struct xdr_stream *xdr,
static void nfs3_xdr_enc_write3args(struct rpc_rqst *req, static void nfs3_xdr_enc_write3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_pgio_args *args) const void *data)
{ {
const struct nfs_pgio_args *args = data;
encode_write3args(xdr, args); encode_write3args(xdr, args);
xdr->buf->flags |= XDRBUF_WRITE; xdr->buf->flags |= XDRBUF_WRITE;
} }
...@@ -1055,8 +1068,10 @@ static void encode_createhow3(struct xdr_stream *xdr, ...@@ -1055,8 +1068,10 @@ static void encode_createhow3(struct xdr_stream *xdr,
static void nfs3_xdr_enc_create3args(struct rpc_rqst *req, static void nfs3_xdr_enc_create3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_createargs *args) const void *data)
{ {
const struct nfs3_createargs *args = data;
encode_diropargs3(xdr, args->fh, args->name, args->len); encode_diropargs3(xdr, args->fh, args->name, args->len);
encode_createhow3(xdr, args); encode_createhow3(xdr, args);
} }
...@@ -1071,8 +1086,10 @@ static void nfs3_xdr_enc_create3args(struct rpc_rqst *req, ...@@ -1071,8 +1086,10 @@ static void nfs3_xdr_enc_create3args(struct rpc_rqst *req,
*/ */
static void nfs3_xdr_enc_mkdir3args(struct rpc_rqst *req, static void nfs3_xdr_enc_mkdir3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_mkdirargs *args) const void *data)
{ {
const struct nfs3_mkdirargs *args = data;
encode_diropargs3(xdr, args->fh, args->name, args->len); encode_diropargs3(xdr, args->fh, args->name, args->len);
encode_sattr3(xdr, args->sattr); encode_sattr3(xdr, args->sattr);
} }
...@@ -1091,16 +1108,20 @@ static void nfs3_xdr_enc_mkdir3args(struct rpc_rqst *req, ...@@ -1091,16 +1108,20 @@ static void nfs3_xdr_enc_mkdir3args(struct rpc_rqst *req,
* }; * };
*/ */
static void encode_symlinkdata3(struct xdr_stream *xdr, static void encode_symlinkdata3(struct xdr_stream *xdr,
const struct nfs3_symlinkargs *args) const void *data)
{ {
const struct nfs3_symlinkargs *args = data;
encode_sattr3(xdr, args->sattr); encode_sattr3(xdr, args->sattr);
encode_nfspath3(xdr, args->pages, args->pathlen); encode_nfspath3(xdr, args->pages, args->pathlen);
} }
static void nfs3_xdr_enc_symlink3args(struct rpc_rqst *req, static void nfs3_xdr_enc_symlink3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_symlinkargs *args) const void *data)
{ {
const struct nfs3_symlinkargs *args = data;
encode_diropargs3(xdr, args->fromfh, args->fromname, args->fromlen); encode_diropargs3(xdr, args->fromfh, args->fromname, args->fromlen);
encode_symlinkdata3(xdr, args); encode_symlinkdata3(xdr, args);
xdr->buf->flags |= XDRBUF_WRITE; xdr->buf->flags |= XDRBUF_WRITE;
...@@ -1160,8 +1181,10 @@ static void encode_mknoddata3(struct xdr_stream *xdr, ...@@ -1160,8 +1181,10 @@ static void encode_mknoddata3(struct xdr_stream *xdr,
static void nfs3_xdr_enc_mknod3args(struct rpc_rqst *req, static void nfs3_xdr_enc_mknod3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_mknodargs *args) const void *data)
{ {
const struct nfs3_mknodargs *args = data;
encode_diropargs3(xdr, args->fh, args->name, args->len); encode_diropargs3(xdr, args->fh, args->name, args->len);
encode_mknoddata3(xdr, args); encode_mknoddata3(xdr, args);
} }
...@@ -1175,8 +1198,10 @@ static void nfs3_xdr_enc_mknod3args(struct rpc_rqst *req, ...@@ -1175,8 +1198,10 @@ static void nfs3_xdr_enc_mknod3args(struct rpc_rqst *req,
*/ */
static void nfs3_xdr_enc_remove3args(struct rpc_rqst *req, static void nfs3_xdr_enc_remove3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_removeargs *args) const void *data)
{ {
const struct nfs_removeargs *args = data;
encode_diropargs3(xdr, args->fh, args->name.name, args->name.len); encode_diropargs3(xdr, args->fh, args->name.name, args->name.len);
} }
...@@ -1190,8 +1215,9 @@ static void nfs3_xdr_enc_remove3args(struct rpc_rqst *req, ...@@ -1190,8 +1215,9 @@ static void nfs3_xdr_enc_remove3args(struct rpc_rqst *req,
*/ */
static void nfs3_xdr_enc_rename3args(struct rpc_rqst *req, static void nfs3_xdr_enc_rename3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_renameargs *args) const void *data)
{ {
const struct nfs_renameargs *args = data;
const struct qstr *old = args->old_name; const struct qstr *old = args->old_name;
const struct qstr *new = args->new_name; const struct qstr *new = args->new_name;
...@@ -1209,8 +1235,10 @@ static void nfs3_xdr_enc_rename3args(struct rpc_rqst *req, ...@@ -1209,8 +1235,10 @@ static void nfs3_xdr_enc_rename3args(struct rpc_rqst *req,
*/ */
static void nfs3_xdr_enc_link3args(struct rpc_rqst *req, static void nfs3_xdr_enc_link3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_linkargs *args) const void *data)
{ {
const struct nfs3_linkargs *args = data;
encode_nfs_fh3(xdr, args->fromfh); encode_nfs_fh3(xdr, args->fromfh);
encode_diropargs3(xdr, args->tofh, args->toname, args->tolen); encode_diropargs3(xdr, args->tofh, args->toname, args->tolen);
} }
...@@ -1240,8 +1268,10 @@ static void encode_readdir3args(struct xdr_stream *xdr, ...@@ -1240,8 +1268,10 @@ static void encode_readdir3args(struct xdr_stream *xdr,
static void nfs3_xdr_enc_readdir3args(struct rpc_rqst *req, static void nfs3_xdr_enc_readdir3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_readdirargs *args) const void *data)
{ {
const struct nfs3_readdirargs *args = data;
encode_readdir3args(xdr, args); encode_readdir3args(xdr, args);
prepare_reply_buffer(req, args->pages, 0, prepare_reply_buffer(req, args->pages, 0,
args->count, NFS3_readdirres_sz); args->count, NFS3_readdirres_sz);
...@@ -1280,8 +1310,10 @@ static void encode_readdirplus3args(struct xdr_stream *xdr, ...@@ -1280,8 +1310,10 @@ static void encode_readdirplus3args(struct xdr_stream *xdr,
static void nfs3_xdr_enc_readdirplus3args(struct rpc_rqst *req, static void nfs3_xdr_enc_readdirplus3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_readdirargs *args) const void *data)
{ {
const struct nfs3_readdirargs *args = data;
encode_readdirplus3args(xdr, args); encode_readdirplus3args(xdr, args);
prepare_reply_buffer(req, args->pages, 0, prepare_reply_buffer(req, args->pages, 0,
args->count, NFS3_readdirres_sz); args->count, NFS3_readdirres_sz);
...@@ -1310,8 +1342,10 @@ static void encode_commit3args(struct xdr_stream *xdr, ...@@ -1310,8 +1342,10 @@ static void encode_commit3args(struct xdr_stream *xdr,
static void nfs3_xdr_enc_commit3args(struct rpc_rqst *req, static void nfs3_xdr_enc_commit3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs_commitargs *args) const void *data)
{ {
const struct nfs_commitargs *args = data;
encode_commit3args(xdr, args); encode_commit3args(xdr, args);
} }
...@@ -1319,8 +1353,10 @@ static void nfs3_xdr_enc_commit3args(struct rpc_rqst *req, ...@@ -1319,8 +1353,10 @@ static void nfs3_xdr_enc_commit3args(struct rpc_rqst *req,
static void nfs3_xdr_enc_getacl3args(struct rpc_rqst *req, static void nfs3_xdr_enc_getacl3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_getaclargs *args) const void *data)
{ {
const struct nfs3_getaclargs *args = data;
encode_nfs_fh3(xdr, args->fh); encode_nfs_fh3(xdr, args->fh);
encode_uint32(xdr, args->mask); encode_uint32(xdr, args->mask);
if (args->mask & (NFS_ACL | NFS_DFACL)) if (args->mask & (NFS_ACL | NFS_DFACL))
...@@ -1331,8 +1367,9 @@ static void nfs3_xdr_enc_getacl3args(struct rpc_rqst *req, ...@@ -1331,8 +1367,9 @@ static void nfs3_xdr_enc_getacl3args(struct rpc_rqst *req,
static void nfs3_xdr_enc_setacl3args(struct rpc_rqst *req, static void nfs3_xdr_enc_setacl3args(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
const struct nfs3_setaclargs *args) const void *data)
{ {
const struct nfs3_setaclargs *args = data;
unsigned int base; unsigned int base;
int error; int error;
...@@ -2495,7 +2532,7 @@ static int nfs3_stat_to_errno(enum nfs_stat status) ...@@ -2495,7 +2532,7 @@ static int nfs3_stat_to_errno(enum nfs_stat status)
#define PROC(proc, argtype, restype, timer) \ #define PROC(proc, argtype, restype, timer) \
[NFS3PROC_##proc] = { \ [NFS3PROC_##proc] = { \
.p_proc = NFS3PROC_##proc, \ .p_proc = NFS3PROC_##proc, \
.p_encode = (kxdreproc_t)nfs3_xdr_enc_##argtype##3args, \ .p_encode = nfs3_xdr_enc_##argtype##3args, \
.p_decode = (kxdrdproc_t)nfs3_xdr_dec_##restype##3res, \ .p_decode = (kxdrdproc_t)nfs3_xdr_dec_##restype##3res, \
.p_arglen = NFS3_##argtype##args_sz, \ .p_arglen = NFS3_##argtype##args_sz, \
.p_replen = NFS3_##restype##res_sz, \ .p_replen = NFS3_##restype##res_sz, \
...@@ -2538,7 +2575,7 @@ const struct rpc_version nfs_version3 = { ...@@ -2538,7 +2575,7 @@ const struct rpc_version nfs_version3 = {
static struct rpc_procinfo nfs3_acl_procedures[] = { static struct rpc_procinfo nfs3_acl_procedures[] = {
[ACLPROC3_GETACL] = { [ACLPROC3_GETACL] = {
.p_proc = ACLPROC3_GETACL, .p_proc = ACLPROC3_GETACL,
.p_encode = (kxdreproc_t)nfs3_xdr_enc_getacl3args, .p_encode = nfs3_xdr_enc_getacl3args,
.p_decode = (kxdrdproc_t)nfs3_xdr_dec_getacl3res, .p_decode = (kxdrdproc_t)nfs3_xdr_dec_getacl3res,
.p_arglen = ACL3_getaclargs_sz, .p_arglen = ACL3_getaclargs_sz,
.p_replen = ACL3_getaclres_sz, .p_replen = ACL3_getaclres_sz,
...@@ -2547,7 +2584,7 @@ static struct rpc_procinfo nfs3_acl_procedures[] = { ...@@ -2547,7 +2584,7 @@ static struct rpc_procinfo nfs3_acl_procedures[] = {
}, },
[ACLPROC3_SETACL] = { [ACLPROC3_SETACL] = {
.p_proc = ACLPROC3_SETACL, .p_proc = ACLPROC3_SETACL,
.p_encode = (kxdreproc_t)nfs3_xdr_enc_setacl3args, .p_encode = nfs3_xdr_enc_setacl3args,
.p_decode = (kxdrdproc_t)nfs3_xdr_dec_setacl3res, .p_decode = (kxdrdproc_t)nfs3_xdr_dec_setacl3res,
.p_arglen = ACL3_setaclargs_sz, .p_arglen = ACL3_setaclargs_sz,
.p_replen = ACL3_setaclres_sz, .p_replen = ACL3_setaclres_sz,
......
...@@ -112,7 +112,7 @@ ...@@ -112,7 +112,7 @@
decode_getattr_maxsz) decode_getattr_maxsz)
static void encode_fallocate(struct xdr_stream *xdr, static void encode_fallocate(struct xdr_stream *xdr,
struct nfs42_falloc_args *args) const struct nfs42_falloc_args *args)
{ {
encode_nfs4_stateid(xdr, &args->falloc_stateid); encode_nfs4_stateid(xdr, &args->falloc_stateid);
encode_uint64(xdr, args->falloc_offset); encode_uint64(xdr, args->falloc_offset);
...@@ -120,7 +120,7 @@ static void encode_fallocate(struct xdr_stream *xdr, ...@@ -120,7 +120,7 @@ static void encode_fallocate(struct xdr_stream *xdr,
} }
static void encode_allocate(struct xdr_stream *xdr, static void encode_allocate(struct xdr_stream *xdr,
struct nfs42_falloc_args *args, const struct nfs42_falloc_args *args,
struct compound_hdr *hdr) struct compound_hdr *hdr)
{ {
encode_op_hdr(xdr, OP_ALLOCATE, decode_allocate_maxsz, hdr); encode_op_hdr(xdr, OP_ALLOCATE, decode_allocate_maxsz, hdr);
...@@ -128,7 +128,7 @@ static void encode_allocate(struct xdr_stream *xdr, ...@@ -128,7 +128,7 @@ static void encode_allocate(struct xdr_stream *xdr,
} }
static void encode_copy(struct xdr_stream *xdr, static void encode_copy(struct xdr_stream *xdr,
struct nfs42_copy_args *args, const struct nfs42_copy_args *args,
struct compound_hdr *hdr) struct compound_hdr *hdr)
{ {
encode_op_hdr(xdr, OP_COPY, decode_copy_maxsz, hdr); encode_op_hdr(xdr, OP_COPY, decode_copy_maxsz, hdr);
...@@ -145,7 +145,7 @@ static void encode_copy(struct xdr_stream *xdr, ...@@ -145,7 +145,7 @@ static void encode_copy(struct xdr_stream *xdr,
} }
static void encode_deallocate(struct xdr_stream *xdr, static void encode_deallocate(struct xdr_stream *xdr,
struct nfs42_falloc_args *args, const struct nfs42_falloc_args *args,
struct compound_hdr *hdr) struct compound_hdr *hdr)
{ {
encode_op_hdr(xdr, OP_DEALLOCATE, decode_deallocate_maxsz, hdr); encode_op_hdr(xdr, OP_DEALLOCATE, decode_deallocate_maxsz, hdr);
...@@ -153,7 +153,7 @@ static void encode_deallocate(struct xdr_stream *xdr, ...@@ -153,7 +153,7 @@ static void encode_deallocate(struct xdr_stream *xdr,
} }
static void encode_seek(struct xdr_stream *xdr, static void encode_seek(struct xdr_stream *xdr,
struct nfs42_seek_args *args, const struct nfs42_seek_args *args,
struct compound_hdr *hdr) struct compound_hdr *hdr)
{ {
encode_op_hdr(xdr, OP_SEEK, decode_seek_maxsz, hdr); encode_op_hdr(xdr, OP_SEEK, decode_seek_maxsz, hdr);
...@@ -163,7 +163,7 @@ static void encode_seek(struct xdr_stream *xdr, ...@@ -163,7 +163,7 @@ static void encode_seek(struct xdr_stream *xdr,
} }
static void encode_layoutstats(struct xdr_stream *xdr, static void encode_layoutstats(struct xdr_stream *xdr,
struct nfs42_layoutstat_args *args, const struct nfs42_layoutstat_args *args,
struct nfs42_layoutstat_devinfo *devinfo, struct nfs42_layoutstat_devinfo *devinfo,
struct compound_hdr *hdr) struct compound_hdr *hdr)
{ {
...@@ -191,7 +191,7 @@ static void encode_layoutstats(struct xdr_stream *xdr, ...@@ -191,7 +191,7 @@ static void encode_layoutstats(struct xdr_stream *xdr,
} }
static void encode_clone(struct xdr_stream *xdr, static void encode_clone(struct xdr_stream *xdr,
struct nfs42_clone_args *args, const struct nfs42_clone_args *args,
struct compound_hdr *hdr) struct compound_hdr *hdr)
{ {
__be32 *p; __be32 *p;
...@@ -210,8 +210,9 @@ static void encode_clone(struct xdr_stream *xdr, ...@@ -210,8 +210,9 @@ static void encode_clone(struct xdr_stream *xdr,
*/ */
static void nfs4_xdr_enc_allocate(struct rpc_rqst *req, static void nfs4_xdr_enc_allocate(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
struct nfs42_falloc_args *args) const void *data)
{ {
const struct nfs42_falloc_args *args = data;
struct compound_hdr hdr = { struct compound_hdr hdr = {
.minorversion = nfs4_xdr_minorversion(&args->seq_args), .minorversion = nfs4_xdr_minorversion(&args->seq_args),
}; };
...@@ -225,7 +226,7 @@ static void nfs4_xdr_enc_allocate(struct rpc_rqst *req, ...@@ -225,7 +226,7 @@ static void nfs4_xdr_enc_allocate(struct rpc_rqst *req,
} }
static void encode_copy_commit(struct xdr_stream *xdr, static void encode_copy_commit(struct xdr_stream *xdr,
struct nfs42_copy_args *args, const struct nfs42_copy_args *args,
struct compound_hdr *hdr) struct compound_hdr *hdr)
{ {
__be32 *p; __be32 *p;
...@@ -241,8 +242,9 @@ static void encode_copy_commit(struct xdr_stream *xdr, ...@@ -241,8 +242,9 @@ static void encode_copy_commit(struct xdr_stream *xdr,
*/ */
static void nfs4_xdr_enc_copy(struct rpc_rqst *req, static void nfs4_xdr_enc_copy(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
struct nfs42_copy_args *args) const void *data)
{ {
const struct nfs42_copy_args *args = data;
struct compound_hdr hdr = { struct compound_hdr hdr = {
.minorversion = nfs4_xdr_minorversion(&args->seq_args), .minorversion = nfs4_xdr_minorversion(&args->seq_args),
}; };
...@@ -262,8 +264,9 @@ static void nfs4_xdr_enc_copy(struct rpc_rqst *req, ...@@ -262,8 +264,9 @@ static void nfs4_xdr_enc_copy(struct rpc_rqst *req,
*/ */
static void nfs4_xdr_enc_deallocate(struct rpc_rqst *req, static void nfs4_xdr_enc_deallocate(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
struct nfs42_falloc_args *args) const void *data)
{ {
const struct nfs42_falloc_args *args = data;
struct compound_hdr hdr = { struct compound_hdr hdr = {
.minorversion = nfs4_xdr_minorversion(&args->seq_args), .minorversion = nfs4_xdr_minorversion(&args->seq_args),
}; };
...@@ -281,8 +284,9 @@ static void nfs4_xdr_enc_deallocate(struct rpc_rqst *req, ...@@ -281,8 +284,9 @@ static void nfs4_xdr_enc_deallocate(struct rpc_rqst *req,
*/ */
static void nfs4_xdr_enc_seek(struct rpc_rqst *req, static void nfs4_xdr_enc_seek(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
struct nfs42_seek_args *args) const void *data)
{ {
const struct nfs42_seek_args *args = data;
struct compound_hdr hdr = { struct compound_hdr hdr = {
.minorversion = nfs4_xdr_minorversion(&args->seq_args), .minorversion = nfs4_xdr_minorversion(&args->seq_args),
}; };
...@@ -299,8 +303,9 @@ static void nfs4_xdr_enc_seek(struct rpc_rqst *req, ...@@ -299,8 +303,9 @@ static void nfs4_xdr_enc_seek(struct rpc_rqst *req,
*/ */
static void nfs4_xdr_enc_layoutstats(struct rpc_rqst *req, static void nfs4_xdr_enc_layoutstats(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
struct nfs42_layoutstat_args *args) const void *data)
{ {
const struct nfs42_layoutstat_args *args = data;
int i; int i;
struct compound_hdr hdr = { struct compound_hdr hdr = {
...@@ -321,8 +326,9 @@ static void nfs4_xdr_enc_layoutstats(struct rpc_rqst *req, ...@@ -321,8 +326,9 @@ static void nfs4_xdr_enc_layoutstats(struct rpc_rqst *req,
*/ */
static void nfs4_xdr_enc_clone(struct rpc_rqst *req, static void nfs4_xdr_enc_clone(struct rpc_rqst *req,
struct xdr_stream *xdr, struct xdr_stream *xdr,
struct nfs42_clone_args *args) const void *data)
{ {
const struct nfs42_clone_args *args = data;
struct compound_hdr hdr = { struct compound_hdr hdr = {
.minorversion = nfs4_xdr_minorversion(&args->seq_args), .minorversion = nfs4_xdr_minorversion(&args->seq_args),
}; };
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment