* GPL HEADER END
*/
/*
- * Copyright (c) 2012 Whamcloud, Inc.
+ * Copyright (c) 2012, 2013, Intel Corporation.
*/
/*
* lustre/include/lustre/lustre_lfsck_user.h
LPF_DRYRUN = 0x0004,
};
-enum lfsck_method {
- /* Object table based iteration, depends on backend filesystem.
- * For ldiskfs, it is inode table based iteration. */
- LM_OTABLE = 1,
-
- /* Namespace based scanning. NOT support yet. */
- LM_NAMESPACE = 2,
-};
-
enum lfsck_type {
/* For MDT-OST consistency check/repair. */
LT_LAYOUT = 0x0001,
/* For MDT-MDT consistency check/repair. */
LT_DNE = 0x0002,
+
+ /* For FID-in-dirent and linkEA consistency check/repair. */
+ LT_NAMESPACE = 0x0004,
};
-#define LFSCK_VERSION_V1 10
+#define LFSCK_VERSION_V1 1
+#define LFSCK_VERSION_V2 2
#define LFSCK_TYPES_ALL ((__u16)(~0))
#define LFSCK_TYPES_DEF ((__u16)0)
+#define LFSCK_TYPES_SUPPORTED LT_NAMESPACE
#define LFSCK_SPEED_NO_LIMIT 0
#define LFSCK_SPEED_LIMIT_DEF LFSCK_SPEED_NO_LIMIT
enum lfsck_start_valid {
LSV_SPEED_LIMIT = 0x00000001,
- LSV_METHOD = 0x00000002,
- LSV_ERROR_HANDLE = 0x00000004,
- LSV_DRYRUN = 0x00000008,
+ LSV_ERROR_HANDLE = 0x00000002,
+ LSV_DRYRUN = 0x00000004,
};
/* Arguments for starting lfsck. */
/* Which arguments are valid, see 'enum lfsck_start_valid'. */
__u32 ls_valid;
+ /* How many items can be scanned at most per second. */
+ __u32 ls_speed_limit;
+
/* For compatibility between user space tools and kernel service. */
__u16 ls_version;
/* Flags for the LFSCK, see 'enum lfsck_param_flags'. */
__u16 ls_flags;
- /* Object iteration method, see 'enum lfsck_method'. */
- __u16 ls_method;
-
- /* How many items can be scanned at most per second. */
- __u32 ls_speed_limit;
+ /* For 64-bits aligned. */
+ __u16 ls_padding;
};
#endif /* _LUSTRE_LFSCK_USER_H */