1 Each message format appears in one or more of the request message
2 pairs (cf. request_message_pairs.txt). The symbol for the format
3 connects the format to its use in the request message pairs and is not
4 actually used in any kind of output or reports. That is, it is a
5 symbol in the source and not a string anywhere.
7 For each format there is a sequnce of symbols starting with "RMF_",
8 and each of those symbols, in turn, refers to a structure of the type
9 "struct req_msg_field". Do not be mislead by the word "field" in the
10 name. It is a "struct" with a collection of fields, in C source code
11 terms. It is misleadingly called a "field" simply because it is a
12 subsection within the definition of the message format.
14 Every format begins with the structure "RMF_PTLRPC_BODY". That
15 structure gives additional details that will assist the receiver with
16 decoding the PtlRPC message. This includes, especially, the pb_opc
17 field for the op code corresponding to the operation being
18 requested. Thus the message format specifies a sequence of structures
19 whose fields together define a sequence of bytes. Together with a
20 header message (and some optional padding), this sequence of bytes
21 constitutes one PtlRPC message.
23 There are 95 message formats, and between them they employ a total of
24 66 different sturctures. See structures.txt for an alphabetic list
25 that associates each messgage format symbol (RMF_*) with the structure
26 definition (if any) that it corresponds to. Note athat there is an
27 imperfect mapping from the symbol used for a structure in a message
28 format and the actual structure definition in the source code. A
29 series of definitions in layout.c makes the connection. The details of
30 all the structures along with the format for the message header are
31 presented in struct_defs.txt.
33 Note especially that when a named message pair calls for a message
34 format that is "empty", that does not mean that no request is sent or
35 no reply expected. The "empty" format consists of an RMF_PTLRPC_BODY
36 (together with the header) and nothing else.
58 ldlm_cp_callback_client
67 ldlm_enqueue_lvb_server
76 ldlm_gl_callback_desc_client
81 ldlm_gl_callback_server
85 ldlm_intent_basic_client
96 ldlm_intent_create_client
105 ldlm_intent_getattr_client
113 ldlm_intent_getattr_server
121 ldlm_intent_getxattr_client
128 ldlm_intent_getxattr_server
138 ldlm_intent_layout_client
145 ldlm_intent_open_client
155 ldlm_intent_open_server
164 ldlm_intent_quota_client
170 ldlm_intent_quota_server
183 ldlm_intent_unlink_client
195 llog_origin_handle_create_client
200 llog_origin_handle_next_block_server
217 mds_getattr_name_client
252 mds_last_unlink_server
264 mds_reint_create_client
270 mds_reint_create_rmt_acl_client
278 mds_reint_create_slave_client
286 mds_reint_create_sym_client
294 mds_reint_link_client
302 mds_reint_open_client
310 mds_reint_open_server
318 mds_reint_rename_client
327 mds_reint_setattr_client
336 mds_reint_setxattr_client
344 mds_reint_unlink_client
382 mdt_hsm_action_server
385 RMF_MDS_HSM_CURRENT_ACTION
392 mdt_hsm_ct_unregister
405 RMF_MDS_HSM_USER_ITEM
408 mdt_hsm_state_get_server
419 mdt_release_close_client
434 mgs_config_read_client
438 mgs_config_read_server
517 ost_get_fiemap_client
522 ost_get_fiemap_server
526 ost_get_info_generic_client
530 ost_get_info_generic_server
534 ost_get_last_fid_client
539 ost_get_last_fid_server
543 ost_get_last_id_server
547 ost_grant_shrink_client