/* How many items can be scanned at most per second. */
__u32 lb_speed_limit;
+ /* The windows size for async requests pipeline. */
+ __u16 lb_async_windows;
+
/* For 64-bits aligned. */
- __u32 lb_padding;
+ __u16 lb_padding;
/* For future using. */
__u64 lb_reserved[6];
void (*lfsck_data_release)(const struct lu_env *env,
struct lfsck_component *com);
+
+ void (*lfsck_quit)(const struct lu_env *env,
+ struct lfsck_component *com);
};
#define TGT_PTRS 256 /* number of pointers at 1st level */
cfs_list_t li_list_idle;
atomic_t li_ref;
+ atomic_t li_double_scan_count;
struct ptlrpc_thread li_thread;
/* The time for last checkpoint, jiffies */
* then lti_ent::lde_name will be lti_key. */
struct lu_dirent lti_ent;
char lti_key[NAME_MAX + 16];
+ struct lfsck_request lti_lr;
};
/* lfsck_lib.c */
int lfsck_post(const struct lu_env *env, struct lfsck_instance *lfsck,
int result);
int lfsck_double_scan(const struct lu_env *env, struct lfsck_instance *lfsck);
+void lfsck_quit(const struct lu_env *env, struct lfsck_instance *lfsck);
/* lfsck_engine.c */
int lfsck_master_engine(void *args);