X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flustre%2Flustre_lfsck_user.h;h=4ff039b7451ded15450e6ffd45c079fc04c98772;hb=b046468f58a1f40e85cb59ed9abf75fd2fd5ea5a;hp=2232ea718b8386ff31e607bf7d197b3bd4be6352;hpb=b6a1b9470e7acccd731d97b7c9409a9f61befb0c;p=fs%2Flustre-release.git diff --git a/lustre/include/lustre/lustre_lfsck_user.h b/lustre/include/lustre/lustre_lfsck_user.h index 2232ea7..4ff039b 100644 --- a/lustre/include/lustre/lustre_lfsck_user.h +++ b/lustre/include/lustre/lustre_lfsck_user.h @@ -20,7 +20,7 @@ * GPL HEADER END */ /* - * Copyright (c) 2012, 2013, Intel Corporation. + * Copyright (c) 2012, 2014, Intel Corporation. */ /* * lustre/include/lustre/lustre_lfsck_user.h @@ -32,52 +32,64 @@ #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, - /* Start/stop LFSCK on all MDT devices. */ - LPF_ALL_MDT = 0x0008, + /* LFSCK runs on all targets. */ + LPF_ALL_TGT = 0x0008, - /* Broadcast the command to other MDTs. */ - LPF_BROADCAST = 0x0010, -}; + /* Broadcast the command to other MDTs. Only valid on the sponsor MDT */ + LPF_BROADCAST = 0x0010, -enum lfsck_type { - /* For MDT-OST consistency check/repair. */ - LT_LAYOUT = 0x0001, + /* Handle orphan OST-objects. */ + LPF_OST_ORPHAN = 0x0020, + + /* Create OST-object for dangling LOV EA. */ + LPF_CREATE_OSTOBJ = 0x0040, - /* For MDT-MDT consistency check/repair. */ - LT_DNE = 0x0002, + /* Create MDT-object for dangling name entry. */ + LPF_CREATE_MDTOBJ = 0x0080, +}; - /* For FID-in-dirent and linkEA consistency check/repair. */ - LT_NAMESPACE = 0x0004, +enum lfsck_type { + /* 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 (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, + LSV_CREATE_MDTOBJ = 0x00000020, }; /* Arguments for starting lfsck. */