X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Finclude%2Flustre%2Flustre_lfsck_user.h;h=e116e077fc06c714f98447d976555f0549190479;hp=7c9751b58300bf2cf92e28ef88d3e911dbac5faf;hb=4c4f74b0a581e139f3bf3db1a41d2b11594c039f;hpb=e1a87d94e89c175ac8a432be5d6eec138e8915fc diff --git a/lustre/include/lustre/lustre_lfsck_user.h b/lustre/include/lustre/lustre_lfsck_user.h index 7c9751b..e116e07 100644 --- a/lustre/include/lustre/lustre_lfsck_user.h +++ b/lustre/include/lustre/lustre_lfsck_user.h @@ -32,55 +32,63 @@ #ifndef _LUSTRE_LFSCK_USER_H # define _LUSTRE_LFSCK_USER_H +# include enum lfsck_param_flags { /* Reset LFSCK iterator position to the device beginning. */ - LPF_RESET = 0x0001, + LPF_RESET = 0x0001, /* Exit when fail. */ - LPF_FAILOUT = 0x0002, + LPF_FAILOUT = 0x0002, /* Dryrun mode, only check without modification */ - LPF_DRYRUN = 0x0004, + LPF_DRYRUN = 0x0004, /* LFSCK runs on all targets. */ - LPF_ALL_TGT = 0x0008, + LPF_ALL_TGT = 0x0008, /* Broadcast the command to other MDTs. Only valid on the sponsor MDT */ - LPF_BROADCAST = 0x0010, + LPF_BROADCAST = 0x0010, /* Handle orphan objects. */ - LPF_ORPHAN = 0x0020, + LPF_ORPHAN = 0x0020, + + /* Create OST-object for dangling LOV EA. */ + LPF_CREATE_OSTOBJ = 0x0040, }; enum lfsck_type { - /* For MDT-OST consistency check/repair. */ - LT_LAYOUT = 0x0001, + /* For MDT and OST internal OSD consistency check/repair. */ + LFSCK_TYPE_SCRUB = 0x0000, + + /* For MDT-OST (layout, object) consistency check/repair. */ + LFSCK_TYPE_LAYOUT = 0x0001, - /* For MDT-MDT consistency check/repair. */ - LT_DNE = 0x0002, + /* For MDT-MDT (remote object) consistency check/repair. */ + LFSCK_TYPE_DNE = 0x0002, - /* For FID-in-dirent and linkEA consistency check/repair. */ - LT_NAMESPACE = 0x0004, + /* For MDT (FID-in-dirent, linkEA) consistency check/repair. */ + LFSCK_TYPE_NAMESPACE = 0x0004, + LFSCK_TYPES_SUPPORTED = (LFSCK_TYPE_SCRUB | LFSCK_TYPE_LAYOUT | + LFSCK_TYPE_NAMESPACE), + LFSCK_TYPES_DEF = LFSCK_TYPES_SUPPORTED, + LFSCK_TYPES_ALL = ((__u16)(~0)) }; #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_LAYOUT | LT_NAMESPACE) - #define LFSCK_SPEED_NO_LIMIT 0 #define LFSCK_SPEED_LIMIT_DEF LFSCK_SPEED_NO_LIMIT #define LFSCK_ASYNC_WIN_DEFAULT 1024 #define LFSCK_ASYNC_WIN_MAX ((__u16)(~0)) enum lfsck_start_valid { - LSV_SPEED_LIMIT = 0x00000001, + LSV_SPEED_LIMIT = 0x00000001, LSV_ERROR_HANDLE = 0x00000002, LSV_DRYRUN = 0x00000004, LSV_ASYNC_WINDOWS = 0x00000008, + LSV_CREATE_OSTOBJ = 0x00000010, }; /* Arguments for starting lfsck. */