Whamcloud - gitweb
LUDOC-270 protocol: Add a 'basement' dir with support files
[doc/protocol.git] / basement / structures.txt
1 lustre/ptlrpc/layout.c establishes a mapping between the symbols
2 (starting with RMF_) for message format structures and the actual
3 structure definitions they represent.  There are three entries in this
4 mapping that do not appear in any message format. They are:
5   RMF_OST_ID => ost_id
6   RMF_STRING => string
7   RMF_U32 => u32
8 There are also three duplicates: 
9   RMF_CAPA1 => capa and 
10   RMF_CAPA2 => capa
11   RMF_FIEMAP_KEY => fiemap and 
12   RMF_FIEMAP_VAL => fiemap
13   RMF_NIOBUF_REMOTE => niobuf_remote and 
14   RMF_RCS => niobuf_remote
15
16 The mesage format symbols RMF_MGS_CONFIG_BODY and RMF_MGS_CONFIG_RES
17 have the names, respecitvely, "mgs_config_read request" and
18 "mgs_config_read reply" with two words (or a missing
19 underscore). Similarly, RMF_U32 has the name "generic u32".
20
21 Many of the message format symbols have a name that is the same as the
22 symbol but in lower case and with out the leading "RMF_". On the other
23 hand many of the symbols do not follow this pattern. Each declaration
24 also has a field for the size to be allocated for the structure, and
25 most use the "sizeof(struct the_struct)" construction to identify the
26 size needed. That construct then gives a notion of what actual
27 structure definition is going to give meaning to the bytes in that
28 structure. The sizeof column presents that 'struct' name or a hint
29 about the size of the message. A value of "-1" means, "the size is not
30 going to be well defined in advance." Thus additional hits will need
31 ot be included in the rest of the message.
32
33 message format symbol           name                    sizeof
34 ---------------------           ----------------        ------------------
35 RMF_ACL                         acl                     LUSTRE_POSIX_ACL_MAX_SIZE
36 RMF_CAPA1                       capa                    lustre_capa
37 RMF_CAPA2                       capa                    lustre_capa
38 RMF_CLOSE_DATA                  data_version            close_data
39 RMF_CLUUID                      cluuid                  obd_uuid
40 RMF_CONN                        conn                    lustre_handle
41 RMF_CONNECT_DATA                cdata                   obd_connect_data
42 RMF_DLM_GL_DESC                 dlm_gl_desc             ldlm_gl_desc
43 RMF_DLM_LVB                     dlm_lvb                 -1
44 RMF_DLM_REP                     dlm_rep                 ldlm_reply
45 RMF_DLM_REQ                     dlm_req                 ldlm_request
46 RMF_EADATA                      eadata                  -1
47 RMF_EAVALS                      eavals                  -1
48 RMF_EAVALS_LENS                 eavals_lens             __u32
49 RMF_FID                         fid                     lu_fid
50 RMF_FIEMAP_KEY                  fiemap                  ll_fiemap_info_key
51 RMF_FIEMAP_VAL                  fiemap                  -1
52 RMF_FLD_MDFLD                   fld_query_mdfld         lu_seq_range
53 RMF_FLD_OPC                     fld_query_opc           __u32
54 RMF_GENERIC_DATA                generic_data            -1
55 RMF_GETINFO_KEY                 getinfo_key             -1
56 RMF_GETINFO_VAL                 getinfo_val             -1
57 RMF_GETINFO_VALLEN              getinfo_vallen          __u32
58 RMF_HSM_STATE_SET               hsm_state_set           hsm_state_set
59 RMF_HSM_USER_STATE              hsm_user_state          hsm_user_state
60 RMF_IDX_INFO                    idx_info                idx_info
61 RMF_LAYOUT_INTENT               layout_intent           layout_intent
62 RMF_LDLM_INTENT                 ldlm_intent             ldlm_intent
63 RMF_LFSCK_REPLY                 lfsck_reply             lfsck_reply
64 RMF_LFSCK_REQUEST               lfsck_request           lfsck_request
65 RMF_LLOGD_BODY                  llogd_body              llogd_body
66 RMF_LLOGD_CONN_BODY             llogd_conn_body         llogd_conn_body
67 RMF_LLOG_LOG_HDR                llog_log_hdr            llog_log_hdr
68 RMF_LOGCOOKIES                  logcookies              llog_cookie
69 RMF_MDS_HSM_ARCHIVE             hsm_archive             __u32
70 RMF_MDS_HSM_CURRENT_ACTION      hsm_current_action      hsm_current_action
71 RMF_MDS_HSM_PROGRESS            hsm_progress            hsm_progress_kernel
72 RMF_MDS_HSM_REQUEST             hsm_request             hsm_request
73 RMF_MDS_HSM_USER_ITEM           hsm_user_item           hsm_user_item
74 RMF_MDT_BODY                    mdt_body                mdt_body
75 RMF_MDT_EPOCH                   mdt_ioepoch             mdt_ioepoch
76 RMF_MDT_MD                      mdt_md                  MIN_MD_SIZE
77 RMF_MGS_CONFIG_BODY             mgs_config_read request mgs_config_body
78 RMF_MGS_CONFIG_RES              mgs_config_read reply   mgs_config_res
79 RMF_MGS_SEND_PARAM              mgs_send_param          mgs_send_param
80 RMF_MGS_TARGET_INFO             mgs_target_info         mgs_target_info
81 RMF_NAME                        name                    -1
82 RMF_NIOBUF_REMOTE               niobuf_remote           niobuf_remote
83 RMF_OBD_ID                      obd_id                  __u64
84 RMF_OBD_IOOBJ                   obd_ioobj               obd_ioobj
85 RMF_OBD_QUOTACTL                obd_quotactl            obd_quotactl
86 RMF_OBD_STATFS                  obd_statfs              obd_statfs
87 RMF_OST_BODY                    ost_body                ost_body
88 RMF_OST_ID                      ost_id                  ost_id
89 RMF_OUT_UPDATE                  object_update           -1      
90 RMF_OUT_UPDATE_REPLY            object_update_reply     -1      
91 RMF_PTLRPC_BODY                 ptlrpc_body (aka ptlrpc_body_v3) ptlrpc_body
92 RMF_QUOTA_BODY                  quota_body              quota_body
93 RMF_RCS                         niobuf_remote           __u32
94 RMF_REC_REINT                   rec_reint               mdt_rec_reint
95 RMF_SEQ_OPC                     seq_query_opc           __u32
96 RMF_SEQ_RANGE                   seq_query_range         lu_seq_range
97 RMF_SETINFO_KEY                 setinfo_key             -1
98 RMF_SETINFO_VAL                 setinfo_val             -1
99 RMF_STRING                      string                  -1
100 RMF_SWAP_LAYOUTS                swap_layouts            mdc_swap_layouts
101 RMF_SYMTGT                      symtgt                  -1
102 RMF_TGTUUID                     tgtuuid                 obd_uuid
103 RMF_U32                         generic u32             u32 __u32
104