staging/lustre/scrub: OI scrub on OST
authorFan Yong <fan.yong@intel.com>
Tue, 3 Dec 2013 13:58:43 +0000 (21:58 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 3 Dec 2013 16:45:29 +0000 (08:45 -0800)
Main part of original patch in Lustre tree
(http://review.whamcloud.com/6669) changes server code and
is unneeded by client. The patch only picks up common
functions and data structures change.

Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-3335
Lustre-change: http://review.whamcloud.com/6669
Signed-off-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Signed-off-by: Peng Tao <bergwolf@gmail.com>
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
drivers/staging/lustre/lustre/include/obd_support.h
drivers/staging/lustre/lustre/ptlrpc/wiretest.c

index 7dfb925a536b9d8b68f32fcfc681edc480b04106..08da4f331f236f25f96acbedd9d560a20422f22a 100644 (file)
@@ -321,8 +321,11 @@ static inline int range_compare_loc(const struct lu_seq_range *r1,
  * xattr.
  */
 enum lma_compat {
-       LMAC_HSM = 0x00000001,
-       LMAC_SOM = 0x00000002,
+       LMAC_HSM        = 0x00000001,
+       LMAC_SOM        = 0x00000002,
+       LMAC_NOT_IN_OI  = 0x00000004, /* the object does NOT need OI mapping */
+       LMAC_FID_ON_OST = 0x00000008, /* For OST-object, its OI mapping is
+                                      * under /O/<seq>/d<x>. */
 };
 
 /**
index 825a0c95c585a25d8c421b0c5864e9745835330d..1748985bb4663cfbbb99df0a576101b8b396ef9c 100644 (file)
@@ -256,6 +256,7 @@ int obd_alloc_fail(const void *ptr, const char *name, const char *type,
 #define OBD_FAIL_OSD_SCRUB_FATAL                       0x192
 #define OBD_FAIL_OSD_FID_MAPPING                       0x193
 #define OBD_FAIL_OSD_LMA_INCOMPAT                      0x194
+#define OBD_FAIL_OSD_COMPAT_INVALID_ENTRY              0x195
 
 #define OBD_FAIL_OST                0x200
 #define OBD_FAIL_OST_CONNECT_NET        0x201
index 6cc0d6e61f124c693cda7404012fa0593698d875..c2efd118ddf90e01665c8951445ec38a2abf3cfb 100644 (file)
@@ -431,6 +431,10 @@ void lustre_assert_wire_constants(void)
                (unsigned)LMAC_HSM);
        LASSERTF(LMAC_SOM == 0x00000002UL, "found 0x%.8xUL\n",
                (unsigned)LMAC_SOM);
+       LASSERTF(LMAC_NOT_IN_OI == 0x00000004UL, "found 0x%.8xUL\n",
+               (unsigned)LMAC_NOT_IN_OI);
+       LASSERTF(LMAC_FID_ON_OST == 0x00000008UL, "found 0x%.8xUL\n",
+               (unsigned)LMAC_FID_ON_OST);
        LASSERTF(OBJ_CREATE == 1, "found %lld\n",
                 (long long)OBJ_CREATE);
        LASSERTF(OBJ_DESTROY == 2, "found %lld\n",