From eb1c8ac62c7628a7202d391159bbcff2da0bf35a Mon Sep 17 00:00:00 2001 From: yury Date: Tue, 1 Aug 2006 16:47:09 +0000 Subject: [PATCH] - converting {seq|fld}_client_rpc() to new req-layout. --- lustre/fid/fid_request.c | 14 +++++++++----- lustre/fld/fld_request.c | 22 ++++++++++++++++------ 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/lustre/fid/fid_request.c b/lustre/fid/fid_request.c index 050a1f2..feb2b53 100644 --- a/lustre/fid/fid_request.c +++ b/lustre/fid/fid_request.c @@ -47,7 +47,6 @@ #include #include "fid_internal.h" -/* XXX: this should use new req-layout interface */ static int seq_client_rpc(struct lu_client_seq *seq, struct lu_range *range, @@ -57,6 +56,7 @@ seq_client_rpc(struct lu_client_seq *seq, int repsize = sizeof(struct lu_range); int rc, reqsize = sizeof(__u32); struct ptlrpc_request *req; + struct req_capsule pill; struct lu_range *ran; __u32 *op; ENTRY; @@ -68,7 +68,12 @@ seq_client_rpc(struct lu_client_seq *seq, if (req == NULL) RETURN(-ENOMEM); - op = lustre_msg_buf(req->rq_reqmsg, 0, sizeof(*op)); + req_capsule_init(&pill, req, RCL_CLIENT, + &repsize); + + req_capsule_set(&pill, &RQF_SEQ_QUERY); + + op = req_capsule_client_get(&pill, &RMF_SEQ_OPC); *op = opc; req->rq_replen = lustre_msg_size(1, &repsize); @@ -80,9 +85,7 @@ seq_client_rpc(struct lu_client_seq *seq, if (rc) GOTO(out_req, rc); - ran = lustre_swab_repbuf(req, 0, sizeof(*ran), - lustre_swab_lu_range); - + ran = req_capsule_server_get(&pill, &RMF_SEQ_RANGE); if (ran == NULL) { CERROR("invalid range is returned\n"); GOTO(out_req, rc = -EPROTO); @@ -94,6 +97,7 @@ seq_client_rpc(struct lu_client_seq *seq, EXIT; out_req: + req_capsule_fini(&pill); ptlrpc_req_finished(req); return rc; } diff --git a/lustre/fld/fld_request.c b/lustre/fld/fld_request.c index e2fc9f2..4ffe7b2 100644 --- a/lustre/fld/fld_request.c +++ b/lustre/fld/fld_request.c @@ -322,7 +322,6 @@ fld_client_fini(struct lu_client_fld *fld) } EXPORT_SYMBOL(fld_client_fini); -/* XXX: this should use new req-layout interface. */ static int fld_client_rpc(struct obd_export *exp, struct md_fld *mf, __u32 fld_op) @@ -330,6 +329,7 @@ fld_client_rpc(struct obd_export *exp, int size[2] = {sizeof(__u32), sizeof(struct md_fld)}, rc; int mf_size = sizeof(struct md_fld); struct ptlrpc_request *req; + struct req_capsule pill; struct md_fld *pmf; __u32 *op; ENTRY; @@ -342,10 +342,15 @@ fld_client_rpc(struct obd_export *exp, if (req == NULL) RETURN(-ENOMEM); - op = lustre_msg_buf(req->rq_reqmsg, 0, sizeof (*op)); + req_capsule_init(&pill, req, RCL_CLIENT, + &mf_size); + + req_capsule_set(&pill, &RQF_FLD_QUERY); + + op = req_capsule_client_get(&pill, &RMF_FLD_OPC); *op = fld_op; - pmf = lustre_msg_buf(req->rq_reqmsg, 1, sizeof (*pmf)); + pmf = req_capsule_client_get(&pill, &RMF_FLD_MDFLD); *pmf = *mf; req->rq_replen = lustre_msg_size(1, &mf_size); @@ -355,12 +360,17 @@ fld_client_rpc(struct obd_export *exp, if (rc) GOTO(out_req, rc); - pmf = lustre_swab_repbuf(req, 0, sizeof(*pmf), - lustre_swab_md_fld); + pmf = req_capsule_server_get(&pill, &RMF_FLD_MDFLD); + if (pmf == NULL) { + CERROR("Can't unpack FLD response\n"); + GOTO(out_req, rc = -EFAULT); + } *mf = *pmf; + EXIT; out_req: + req_capsule_fini(&pill); ptlrpc_req_finished(req); - RETURN(rc); + return rc; } static int -- 1.8.3.1