X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flustre_scrub.h;h=38d4fb5b449a0ece2f956179a6ec679d0d158220;hb=e9472c54ac820c3a0db2318a6ef894c3971e6e0b;hp=4002ba63c0fc208f7f74fe176d22f20b6746a389;hpb=a48853cf3dc51b24cc276fcf5f2e3e25a32c0d25;p=fs%2Flustre-release.git diff --git a/lustre/include/lustre_scrub.h b/lustre/include/lustre_scrub.h index 4002ba6..38d4fb5 100644 --- a/lustre/include/lustre_scrub.h +++ b/lustre/include/lustre_scrub.h @@ -33,6 +33,7 @@ #ifndef _LUSTRE_SCRUB_H # define _LUSTRE_SCRUB_H +#include #include #include @@ -46,8 +47,6 @@ #define SCRUB_CHECKPOINT_INTERVAL 60 #define SCRUB_WINDOW_SIZE 1024 -#define HALF_SEC msecs_to_jiffies(MSEC_PER_SEC >> 1) - enum scrub_next_status { /* exit current loop and process next group */ SCRUB_NEXT_BREAK = 1, @@ -187,7 +186,7 @@ enum auto_scrub { struct scrub_file { /* 128-bit uuid for volume. */ - __u8 sf_uuid[16]; + uuid_t sf_uuid; /* See 'enum scrub_flags'. */ __u64 sf_flags; @@ -202,13 +201,13 @@ struct scrub_file { __u16 sf_param; /* The time for the last OI scrub completed. */ - __u64 sf_time_last_complete; + time64_t sf_time_last_complete; - /* The time for the latest OI scrub ran. */ - __u64 sf_time_latest_start; + /* The ttime for the latest OI scrub ran. */ + time64_t sf_time_latest_start; /* The time for the last OI scrub checkpoint. */ - __u64 sf_time_last_checkpoint; + time64_t sf_time_last_checkpoint; /* The position for the latest OI scrub started from. */ __u64 sf_pos_latest_start; @@ -237,8 +236,11 @@ struct scrub_file { /* How many IGIF objects. */ __u64 sf_items_igif; - /* How long the OI scrub has run. */ - __u32 sf_run_time; + /* How long the OI scrub has run in seconds. Do NOT change + * to time64_t since this breaks backwards compatibility. + * It shouldn't take more than 136 years to complete :-) + */ + time_t sf_run_time; /* How many completed OI scrub ran on the device. */ __u32 sf_success_count; @@ -276,11 +278,11 @@ struct lustre_scrub { const char *os_name; - /* The time for last checkpoint, jiffies */ - cfs_time_t os_time_last_checkpoint; + /* The time for last checkpoint, seconds */ + time64_t os_time_last_checkpoint; - /* The time for next checkpoint, jiffies */ - cfs_time_t os_time_next_checkpoint; + /* The time for next checkpoint, seconds */ + time64_t os_time_next_checkpoint; /* How many objects have been checked since last checkpoint. */ __u64 os_new_checked; @@ -333,8 +335,8 @@ struct lustre_index_restore_unit { char liru_name[0]; }; -void scrub_file_init(struct lustre_scrub *scrub, __u8 *uuid); -void scrub_file_reset(struct lustre_scrub *scrub, __u8 *uuid, __u64 flags); +void scrub_file_init(struct lustre_scrub *scrub, uuid_t uuid); +void scrub_file_reset(struct lustre_scrub *scrub, uuid_t uuid, u64 flags); int scrub_file_load(const struct lu_env *env, struct lustre_scrub *scrub); int scrub_file_store(const struct lu_env *env, struct lustre_scrub *scrub); int scrub_checkpoint(const struct lu_env *env, struct lustre_scrub *scrub);