^^^^^^^^^^^^^^^^^^^^
[[struct-lov-mds-md]]
-The 'lov_mds_md' structure contains the layout of a single file.
-In replies to lock requests and other situations requiring
-layout information from an MDT the 'lov_mds_md' information provides
-details about the layout of a file across the OSTs. There may be
-different types of layouts for different files, either 'lov_mds_md_v1'
-or 'lov_mds_md_v3' as of Lustre 2.7, though they are very similar in
-structure.
+The 'lov_mds_md' structure contains the layout of a resource. In
+replies to lock requests and other situations requiring layout
+information from an MDT the 'lov_mds_md' information provides details
+about the layout of a file across the OSTs. There may be different
+types of layouts for different files, either 'lov_mds_md_v1' or
+'lov_mds_md_v3' as of Lustre 2.7, though they are very similar in
+structure. In an intent request (as opposed to a reply and as yet
+unimplemanted) it will modify the layout. It will not be included
+(zero length) in requests in current releases.
+[source,c]
----
struct lov_mds_md_v1 {
__u32 lmm_magic;
entries in the 'lmm_objects' array, which can be determined by the overall
layout size.
+[source,c]
----
struct lov_ost_data_v1 { /* per-stripe data structure (little-endian)*/
struct ost_id l_ost_oi; /* OST object ID */
layout, one per object.
'l_ost_id' identifies the object on the OST specified by 'l_ost_idx'.
-It may contain a OST object ID or a FID as described in <<struct-ost-id>>.
-The 'l_ost_gen' field is currently unused.
+It may contain a OST object ID or a FID. The 'l_ost_gen' field is
+currently unused.
+include::struct_ost_id.txt[]