Lines Matching refs:xdr

79 static void encode_uint32(struct xdr_stream *xdr, u32 n)  in encode_uint32()  argument
81 WARN_ON_ONCE(xdr_stream_encode_u32(xdr, n) < 0); in encode_uint32()
84 static void encode_bitmap4(struct xdr_stream *xdr, const __u32 *bitmap, in encode_bitmap4() argument
87 WARN_ON_ONCE(xdr_stream_encode_uint32_array(xdr, bitmap, len) < 0); in encode_bitmap4()
115 static void encode_nfs_cb_opnum4(struct xdr_stream *xdr, enum nfs_cb_opnum4 op) in encode_nfs_cb_opnum4() argument
119 p = xdr_reserve_space(xdr, 4); in encode_nfs_cb_opnum4()
128 static void encode_nfs_fh4(struct xdr_stream *xdr, const struct knfsd_fh *fh) in encode_nfs_fh4() argument
134 p = xdr_reserve_space(xdr, 4 + length); in encode_nfs_fh4()
146 static void encode_stateid4(struct xdr_stream *xdr, const stateid_t *sid) in encode_stateid4() argument
150 p = xdr_reserve_space(xdr, NFS4_STATEID_SIZE); in encode_stateid4()
160 static void encode_sessionid4(struct xdr_stream *xdr, in encode_sessionid4() argument
165 p = xdr_reserve_space(xdr, NFS4_MAX_SESSIONID_LEN); in encode_sessionid4()
230 static int decode_cb_op_status(struct xdr_stream *xdr, in decode_cb_op_status() argument
236 p = xdr_inline_decode(xdr, 4 + 4); in decode_cb_op_status()
262 static void encode_cb_compound4args(struct xdr_stream *xdr, in encode_cb_compound4args() argument
267 p = xdr_reserve_space(xdr, 4 + 4 + 4 + 4); in encode_cb_compound4args()
294 static int decode_cb_compound4res(struct xdr_stream *xdr, in decode_cb_compound4res() argument
300 p = xdr_inline_decode(xdr, 4 + 4); in decode_cb_compound4res()
306 p = xdr_inline_decode(xdr, length + 4); in decode_cb_compound4res()
325 static void encode_cb_recall4args(struct xdr_stream *xdr, in encode_cb_recall4args() argument
331 encode_nfs_cb_opnum4(xdr, OP_CB_RECALL); in encode_cb_recall4args()
332 encode_stateid4(xdr, &dp->dl_stid.sc_stateid); in encode_cb_recall4args()
334 p = xdr_reserve_space(xdr, 4); in encode_cb_recall4args()
337 encode_nfs_fh4(xdr, &dp->dl_stid.sc_file->fi_fhandle); in encode_cb_recall4args()
351 encode_cb_recallany4args(struct xdr_stream *xdr, in encode_cb_recallany4args() argument
354 encode_nfs_cb_opnum4(xdr, OP_CB_RECALL_ANY); in encode_cb_recallany4args()
355 encode_uint32(xdr, ra->ra_keep); in encode_cb_recallany4args()
356 encode_bitmap4(xdr, ra->ra_bmval, ARRAY_SIZE(ra->ra_bmval)); in encode_cb_recallany4args()
372 static void encode_cb_sequence4args(struct xdr_stream *xdr, in encode_cb_sequence4args() argument
382 encode_nfs_cb_opnum4(xdr, OP_CB_SEQUENCE); in encode_cb_sequence4args()
383 encode_sessionid4(xdr, session); in encode_cb_sequence4args()
385 p = xdr_reserve_space(xdr, 4 + 4 + 4 + 4 + 4); in encode_cb_sequence4args()
416 static int decode_cb_sequence4resok(struct xdr_stream *xdr, in decode_cb_sequence4resok() argument
428 p = xdr_inline_decode(xdr, NFS4_MAX_SESSIONID_LEN + 4 + 4 + 4 + 4); in decode_cb_sequence4resok()
462 static int decode_cb_sequence4res(struct xdr_stream *xdr, in decode_cb_sequence4res() argument
470 status = decode_cb_op_status(xdr, OP_CB_SEQUENCE, &cb->cb_seq_status); in decode_cb_sequence4res()
474 return decode_cb_sequence4resok(xdr, cb); in decode_cb_sequence4res()
489 static void nfs4_xdr_enc_cb_null(struct rpc_rqst *req, struct xdr_stream *xdr, in nfs4_xdr_enc_cb_null() argument
492 xdr_reserve_space(xdr, 0); in nfs4_xdr_enc_cb_null()
498 static void nfs4_xdr_enc_cb_recall(struct rpc_rqst *req, struct xdr_stream *xdr, in nfs4_xdr_enc_cb_recall() argument
508 encode_cb_compound4args(xdr, &hdr); in nfs4_xdr_enc_cb_recall()
509 encode_cb_sequence4args(xdr, cb, &hdr); in nfs4_xdr_enc_cb_recall()
510 encode_cb_recall4args(xdr, dp, &hdr); in nfs4_xdr_enc_cb_recall()
519 struct xdr_stream *xdr, const void *data) in nfs4_xdr_enc_cb_recall_any() argument
529 encode_cb_compound4args(xdr, &hdr); in nfs4_xdr_enc_cb_recall_any()
530 encode_cb_sequence4args(xdr, cb, &hdr); in nfs4_xdr_enc_cb_recall_any()
531 encode_cb_recallany4args(xdr, &hdr, ra); in nfs4_xdr_enc_cb_recall_any()
544 static int nfs4_xdr_dec_cb_null(struct rpc_rqst *req, struct xdr_stream *xdr, in nfs4_xdr_dec_cb_null() argument
554 struct xdr_stream *xdr, in nfs4_xdr_dec_cb_recall() argument
561 status = decode_cb_compound4res(xdr, &hdr); in nfs4_xdr_dec_cb_recall()
565 status = decode_cb_sequence4res(xdr, cb); in nfs4_xdr_dec_cb_recall()
569 return decode_cb_op_status(xdr, OP_CB_RECALL, &cb->cb_status); in nfs4_xdr_dec_cb_recall()
577 struct xdr_stream *xdr, in nfs4_xdr_dec_cb_recall_any() argument
584 status = decode_cb_compound4res(xdr, &hdr); in nfs4_xdr_dec_cb_recall_any()
587 status = decode_cb_sequence4res(xdr, cb); in nfs4_xdr_dec_cb_recall_any()
590 status = decode_cb_op_status(xdr, OP_CB_RECALL_ANY, &cb->cb_status); in nfs4_xdr_dec_cb_recall_any()
621 static void encode_cb_layout4args(struct xdr_stream *xdr, in encode_cb_layout4args() argument
629 p = xdr_reserve_space(xdr, 5 * 4); in encode_cb_layout4args()
636 encode_nfs_fh4(xdr, &ls->ls_stid.sc_file->fi_fhandle); in encode_cb_layout4args()
638 p = xdr_reserve_space(xdr, 2 * 8); in encode_cb_layout4args()
642 encode_stateid4(xdr, &ls->ls_recall_sid); in encode_cb_layout4args()
648 struct xdr_stream *xdr, in nfs4_xdr_enc_cb_layout() argument
659 encode_cb_compound4args(xdr, &hdr); in nfs4_xdr_enc_cb_layout()
660 encode_cb_sequence4args(xdr, cb, &hdr); in nfs4_xdr_enc_cb_layout()
661 encode_cb_layout4args(xdr, ls, &hdr); in nfs4_xdr_enc_cb_layout()
666 struct xdr_stream *xdr, in nfs4_xdr_dec_cb_layout() argument
673 status = decode_cb_compound4res(xdr, &hdr); in nfs4_xdr_dec_cb_layout()
677 status = decode_cb_sequence4res(xdr, cb); in nfs4_xdr_dec_cb_layout()
681 return decode_cb_op_status(xdr, OP_CB_LAYOUTRECALL, &cb->cb_status); in nfs4_xdr_dec_cb_layout()
685 static void encode_stateowner(struct xdr_stream *xdr, struct nfs4_stateowner *so) in encode_stateowner() argument
689 p = xdr_reserve_space(xdr, 8 + 4 + so->so_owner.len); in encode_stateowner()
695 struct xdr_stream *xdr, in nfs4_xdr_enc_cb_notify_lock() argument
711 encode_cb_compound4args(xdr, &hdr); in nfs4_xdr_enc_cb_notify_lock()
712 encode_cb_sequence4args(xdr, cb, &hdr); in nfs4_xdr_enc_cb_notify_lock()
714 p = xdr_reserve_space(xdr, 4); in nfs4_xdr_enc_cb_notify_lock()
716 encode_nfs_fh4(xdr, &nbl->nbl_fh); in nfs4_xdr_enc_cb_notify_lock()
717 encode_stateowner(xdr, &lo->lo_owner); in nfs4_xdr_enc_cb_notify_lock()
724 struct xdr_stream *xdr, in nfs4_xdr_dec_cb_notify_lock() argument
731 status = decode_cb_compound4res(xdr, &hdr); in nfs4_xdr_dec_cb_notify_lock()
735 status = decode_cb_sequence4res(xdr, cb); in nfs4_xdr_dec_cb_notify_lock()
739 return decode_cb_op_status(xdr, OP_CB_NOTIFY_LOCK, &cb->cb_status); in nfs4_xdr_dec_cb_notify_lock()
761 static void encode_offload_info4(struct xdr_stream *xdr, in encode_offload_info4() argument
766 p = xdr_reserve_space(xdr, 4); in encode_offload_info4()
770 p = xdr_reserve_space(xdr, 4 + 8 + 4 + NFS4_VERIFIER_SIZE); in encode_offload_info4()
778 p = xdr_reserve_space(xdr, 8); in encode_offload_info4()
784 static void encode_cb_offload4args(struct xdr_stream *xdr, in encode_cb_offload4args() argument
790 p = xdr_reserve_space(xdr, 4); in encode_cb_offload4args()
792 encode_nfs_fh4(xdr, &cbo->co_fh); in encode_cb_offload4args()
793 encode_stateid4(xdr, &cbo->co_res.cb_stateid); in encode_cb_offload4args()
794 encode_offload_info4(xdr, cbo); in encode_cb_offload4args()
800 struct xdr_stream *xdr, in nfs4_xdr_enc_cb_offload() argument
811 encode_cb_compound4args(xdr, &hdr); in nfs4_xdr_enc_cb_offload()
812 encode_cb_sequence4args(xdr, cb, &hdr); in nfs4_xdr_enc_cb_offload()
813 encode_cb_offload4args(xdr, cbo, &hdr); in nfs4_xdr_enc_cb_offload()
818 struct xdr_stream *xdr, in nfs4_xdr_dec_cb_offload() argument
825 status = decode_cb_compound4res(xdr, &hdr); in nfs4_xdr_dec_cb_offload()
829 status = decode_cb_sequence4res(xdr, cb); in nfs4_xdr_dec_cb_offload()
833 return decode_cb_op_status(xdr, OP_CB_OFFLOAD, &cb->cb_status); in nfs4_xdr_dec_cb_offload()