diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2017-03-09 08:27:30 -0900 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2017-03-09 09:14:11 -0900 |
commit | ac1b32acb4ca8c59c0e4911a8d3b27fd72dc54af (patch) | |
tree | e73a6ea5ddb6f3ece6a3e6c069ffa9ecc5e1ee44 /include | |
parent | a17f7bcec7ed810a247c24e56229af8f43a9a6ae (diff) |
cmd_device_fail
Add a comamnd for setting a device as failed, update bcache sources
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/bcache-ioctl.h | 17 | ||||
-rw-r--r-- | include/linux/bcache.h | 3 |
2 files changed, 15 insertions, 5 deletions
diff --git a/include/linux/bcache-ioctl.h b/include/linux/bcache-ioctl.h index 8ca2fdbe..7a0513cd 100644 --- a/include/linux/bcache-ioctl.h +++ b/include/linux/bcache-ioctl.h @@ -10,8 +10,14 @@ extern "C" { /* global control dev: */ -#define BCH_FORCE_IF_DATA_MISSING (1 << 0) -#define BCH_FORCE_IF_METADATA_MISSING (1 << 1) +#define BCH_FORCE_IF_DATA_LOST (1 << 0) +#define BCH_FORCE_IF_METADATA_LOST (1 << 1) +#define BCH_FORCE_IF_DATA_DEGRADED (1 << 2) +#define BCH_FORCE_IF_METADATA_DEGRADED (1 << 3) + +#define BCH_FORCE_IF_DEGRADED \ + (BCH_FORCE_IF_DATA_DEGRADED| \ + BCH_FORCE_IF_METADATA_DEGRADED) #define BCH_IOCTL_ASSEMBLE _IOW('r', 1, struct bch_ioctl_assemble) #define BCH_IOCTL_INCREMENTAL _IOW('r', 1, struct bch_ioctl_incremental) @@ -23,7 +29,7 @@ extern "C" { #define BCH_IOCTL_DISK_ADD _IOW('r', 4, struct bch_ioctl_disk_add) #define BCH_IOCTL_DISK_REMOVE _IOW('r', 5, struct bch_ioctl_disk_remove) -#define BCH_IOCTL_DISK_FAIL _IOW('r', 6, struct bch_ioctl_disk_fail) +#define BCH_IOCTL_DISK_SET_STATE _IOW('r', 6, struct bch_ioctl_disk_set_state) #define BCH_IOCTL_DISK_REMOVE_BY_UUID \ _IOW('r', 5, struct bch_ioctl_disk_remove_by_uuid) @@ -57,9 +63,10 @@ struct bch_ioctl_disk_remove { __u64 dev; }; -struct bch_ioctl_disk_fail { +struct bch_ioctl_disk_set_state { __u32 flags; - __u32 pad; + __u8 new_state; + __u8 pad[3]; __u64 dev; }; diff --git a/include/linux/bcache.h b/include/linux/bcache.h index d70e2e32..ac3b8b45 100644 --- a/include/linux/bcache.h +++ b/include/linux/bcache.h @@ -969,6 +969,9 @@ LE64_BITMASK(BCH_SB_128_BIT_MACS, struct bch_sb, flags[1], 9, 10); LE64_BITMASK(BCH_SB_ENCRYPTION_TYPE, struct bch_sb, flags[1], 10, 14); LE64_BITMASK(BCH_SB_JOURNAL_ENTRY_SIZE, struct bch_sb, flags[1], 14, 20); +LE64_BITMASK(BCH_SB_META_REPLICAS_REQ, struct bch_sb, flags[1], 20, 24); +LE64_BITMASK(BCH_SB_DATA_REPLICAS_REQ, struct bch_sb, flags[1], 24, 28); + /* Features: */ enum bch_sb_features { BCH_FEATURE_LZ4 = 0, |