[[mds-reint-rpm]]
An RPC that implements an operation that will change the information
-on an MDT.
+on an MDT. There are a variety of operations all gathered under the
+MDS_REINT 'opcode'.
+
+----
+typedef enum {
+ REINT_SETATTR = 1,
+ REINT_CREATE = 2,
+ REINT_LINK = 3,
+ REINT_UNLINK = 4,
+ REINT_RENAME = 5,
+ REINT_OPEN = 6,
+ REINT_SETXATTR = 7,
+ REINT_RMENTRY = 8,
+ REINT_MIGRATE = 9,
+ REINT_MAX
+} mds_reint_t, mdt_reint_t;
+----
REINT_SETATTR
^^^^^^^^^^^^^
-------------------------------------------------------
//////////////////////////////////////////////////////////////////////
+The second buffer ('mdt_rec_setattr' in the above) is one of the
+variants specific to the particular REINT as given by the
+'mdt_reint_t' opcode. Each such variant has the same number and size
+of fields, but how the fields are interpreted varies slightly between
+variiants. For all the variant structures refer to
+<<mds-reint-structs>>.
+
+REINT_SETXATTR
+^^^^^^^^^^^^^^
+[[mds-reint-setxattr-rpc]]
+
+An RPC that implements the 'setxattr' sub-command of the MDS_REINT.
+
+.MDS_REINT:REINT_SETXATTR Generic Packet Structure
+image::mds-reint-setxattr-generic.png["MDS_REINT:REINT_SETXATTR Generic Packet Structure",height=100]
+
+//////////////////////////////////////////////////////////////////////
+The mds-reint-setxattr-generic.png diagram resembles this text art:
+
+ MDS_REINT:
+ --REINT_SETXATTR-request-------------------------------------
+ | ptlrpc_body | mdt_rec_setxattr | lustre_capa | mdt_ioepoc |
+ eadata | llog_cookie | ldlm_request |
+ -------------------------------------------------------------
+
+ --REINT_SETXATTR-reply---------------------------------
+ | ptlrpc_body | mdt_body | mdt_md | acl | lustre_capa |
+ lustre_capa |
+ -------------------------------------------------------
+//////////////////////////////////////////////////////////////////////
+
'ptlrpc_body'::
RPC descriptor.
'mdt_rec_setattr'::
Information pertinent to setting attributes on the MDT.
+'mdt_rec_setxattr'::
+Information pertinent to setting extended attributes on the MDT.
+
'lustre_capa'::
So called "capabilities" structure. This is deprecated in recent
versions of Lustre, and commonly appears in the packet header as a zero