Whamcloud - gitweb
LU-10485 lustre: move LA_* flags to lustre_user.h 25/30825/4
authorSebastien Buisson <sbuisson@ddn.com>
Wed, 10 Jan 2018 16:24:47 +0000 (01:24 +0900)
committerOleg Drokin <oleg.drokin@intel.com>
Wed, 31 Jan 2018 05:52:29 +0000 (05:52 +0000)
The LA_* flags are written to disk as part of the ChangeLog records
in mdd_attr_set_changelog(), which means they are now part of the
on-disk and network protocol, and cannot be changed (at least not the
first 12 bits that are written).
They need to be moved to lustre_user.h.

Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I9fc92e01301e70f0f4e5cd74135b9b2079d63658
Reviewed-on: https://review.whamcloud.com/30825
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Quentin Bouget <quentin.bouget@cea.fr>
lustre/include/lu_object.h
lustre/include/uapi/linux/lustre/lustre_user.h

index 17b5521..63b92ef 100644 (file)
@@ -430,31 +430,6 @@ struct lu_attr {
        __u32           la_layout_version;
 };
 
-/** Bit-mask of valid attributes */
-enum la_valid {
-        LA_ATIME = 1 << 0,
-        LA_MTIME = 1 << 1,
-        LA_CTIME = 1 << 2,
-        LA_SIZE  = 1 << 3,
-        LA_MODE  = 1 << 4,
-        LA_UID   = 1 << 5,
-        LA_GID   = 1 << 6,
-        LA_BLOCKS = 1 << 7,
-        LA_TYPE   = 1 << 8,
-        LA_FLAGS  = 1 << 9,
-        LA_NLINK  = 1 << 10,
-        LA_RDEV   = 1 << 11,
-        LA_BLKSIZE = 1 << 12,
-        LA_KILL_SUID = 1 << 13,
-        LA_KILL_SGID = 1 << 14,
-       LA_PROJID    = 1 << 15,
-       LA_LAYOUT_VERSION = 1 << 16,
-       /**
-        * Attributes must be transmitted to OST objects
-        */
-       LA_REMOTE_ATTR_SET = (LA_UID | LA_GID | LA_PROJID | LA_LAYOUT_VERSION)
-};
-
 /**
  * Layer in the layered object.
  */
index 21948c6..4e70006 100644 (file)
@@ -954,6 +954,34 @@ struct lustre_swap_layouts {
        __u64   sl_dv2;
 };
 
+/** Bit-mask of valid attributes */
+/* The LA_* flags are written to disk as part of the ChangeLog records
+ * so they are part of the on-disk and network protocol, and cannot be changed.
+ * Only the first 12 bits are currently saved.
+ */
+enum la_valid {
+       LA_ATIME = 1 << 0,
+       LA_MTIME = 1 << 1,
+       LA_CTIME = 1 << 2,
+       LA_SIZE  = 1 << 3,
+       LA_MODE  = 1 << 4,
+       LA_UID   = 1 << 5,
+       LA_GID   = 1 << 6,
+       LA_BLOCKS = 1 << 7,
+       LA_TYPE   = 1 << 8,
+       LA_FLAGS  = 1 << 9,
+       LA_NLINK  = 1 << 10,
+       LA_RDEV   = 1 << 11,
+       LA_BLKSIZE = 1 << 12,
+       LA_KILL_SUID = 1 << 13,
+       LA_KILL_SGID = 1 << 14,
+       LA_PROJID    = 1 << 15,
+       LA_LAYOUT_VERSION = 1 << 16,
+       /**
+        * Attributes must be transmitted to OST objects
+        */
+       LA_REMOTE_ATTR_SET = (LA_UID | LA_GID | LA_PROJID | LA_LAYOUT_VERSION)
+};
 
 /********* Changelogs **********/
 /** Changelog record types */