X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flustre_req_layout.h;h=d0fd5abb650ecddbd93b2e0150405b5b9ab29b34;hb=840274b5c5e95e44a5ffedd08ebb4727bc39a845;hp=57c74aa322fe1f21036c76c8a8d9eb38dd62eaf2;hpb=3049ba6ba1241770adeeeffbdfb6fef82bbf0b92;p=fs%2Flustre-release.git diff --git a/lustre/include/lustre_req_layout.h b/lustre/include/lustre_req_layout.h index 57c74aa..d0fd5ab 100644 --- a/lustre/include/lustre_req_layout.h +++ b/lustre/include/lustre_req_layout.h @@ -79,12 +79,21 @@ void req_capsule_init(struct req_capsule *pill, struct ptlrpc_request *req, void req_capsule_fini(struct req_capsule *pill); void req_capsule_set(struct req_capsule *pill, const struct req_format *fmt); +void req_capsule_subreq_init(struct req_capsule *pill, + const struct req_format *fmt, + struct ptlrpc_request *req, + struct lustre_msg *reqmsg, + struct lustre_msg *repmsg, + enum req_location loc); + void req_capsule_client_dump(struct req_capsule *pill); void req_capsule_server_dump(struct req_capsule *pill); void req_capsule_init_area(struct req_capsule *pill); size_t req_capsule_filled_sizes(struct req_capsule *pill, enum req_location loc); int req_capsule_server_pack(struct req_capsule *pill); +int req_capsule_client_pack(struct req_capsule *pill); +void req_capsule_set_replen(struct req_capsule *pill); void *req_capsule_client_get(struct req_capsule *pill, const struct req_msg_field *field); @@ -158,22 +167,6 @@ static inline bool req_capsule_rep_swabbed(struct req_capsule *pill, } /** - * Returns true if request needs to be swabbed into local cpu byteorder - */ -static inline bool req_capsule_req_need_swab(struct req_capsule *pill) -{ - return req_capsule_req_swabbed(pill, MSG_PTLRPC_HEADER_OFF); -} - -/** - * Returns true if request reply needs to be swabbed into local cpu byteorder - */ -static inline bool req_capsule_rep_need_swab(struct req_capsule *pill) -{ - return req_capsule_rep_swabbed(pill, MSG_PTLRPC_HEADER_OFF); -} - -/** * Mark request buffer at offset \a index that it was already swabbed */ static inline void req_capsule_set_req_swabbed(struct req_capsule *pill, @@ -318,6 +311,9 @@ extern struct req_format RQF_CONNECT; extern struct req_format RQF_LFSCK_NOTIFY; extern struct req_format RQF_LFSCK_QUERY; +/* Batch UpdaTe req_format */ +extern struct req_format RQF_MDS_BATCH; + extern struct req_msg_field RMF_GENERIC_DATA; extern struct req_msg_field RMF_PTLRPC_BODY; extern struct req_msg_field RMF_MDT_BODY; @@ -417,6 +413,11 @@ extern struct req_msg_field RMF_OUT_UPDATE_REPLY; extern struct req_msg_field RMF_OUT_UPDATE_HEADER; extern struct req_msg_field RMF_OUT_UPDATE_BUF; +/* Batch UpdaTe format */ +extern struct req_msg_field RMF_BUT_REPLY; +extern struct req_msg_field RMF_BUT_HEADER; +extern struct req_msg_field RMF_BUT_BUF; + /* LFSCK format */ extern struct req_msg_field RMF_LFSCK_REQUEST; extern struct req_msg_field RMF_LFSCK_REPLY;