diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2018-02-07 08:08:24 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2018-02-08 15:33:42 -0500 |
commit | 6976570d670e4053f026d380cfe5397a0a8ed139 (patch) | |
tree | 29abbf0f904cf1a12e7299b270cf59f1e22c3be3 /libbcachefs/bcachefs_ioctl.h | |
parent | a9f5937a9764003f3c88ccff4f92da259f025674 (diff) |
Update bcachefs sources to d5e561b3cc bcachefs: BCH_DATA ioctl
Diffstat (limited to 'libbcachefs/bcachefs_ioctl.h')
-rw-r--r-- | libbcachefs/bcachefs_ioctl.h | 44 |
1 files changed, 25 insertions, 19 deletions
diff --git a/libbcachefs/bcachefs_ioctl.h b/libbcachefs/bcachefs_ioctl.h index aa2a2050..6578847b 100644 --- a/libbcachefs/bcachefs_ioctl.h +++ b/libbcachefs/bcachefs_ioctl.h @@ -46,7 +46,6 @@ struct bch_ioctl_incremental { #define BCH_IOCTL_DISK_ONLINE _IOW(0xbc, 6, struct bch_ioctl_disk) #define BCH_IOCTL_DISK_OFFLINE _IOW(0xbc, 7, struct bch_ioctl_disk) #define BCH_IOCTL_DISK_SET_STATE _IOW(0xbc, 8, struct bch_ioctl_disk_set_state) -#define BCH_IOCTL_DISK_EVACUATE _IOW(0xbc, 9, struct bch_ioctl_disk) #define BCH_IOCTL_DATA _IOW(0xbc, 10, struct bch_ioctl_data) #define BCH_IOCTL_USAGE _IOWR(0xbc, 11, struct bch_ioctl_usage) #define BCH_IOCTL_READ_SUPER _IOW(0xbc, 12, struct bch_ioctl_read_super) @@ -75,30 +74,37 @@ struct bch_ioctl_disk_set_state { __u64 dev; }; -#define BCH_REWRITE_INCREASE_REPLICAS (1 << 0) -#define BCH_REWRITE_DECREASE_REPLICAS (1 << 1) - -#define BCH_REWRITE_RECOMPRESS (1 << 0) -#define BCH_REWRITE_DECREASE_REPLICAS (1 << 1) - enum bch_data_ops { - BCH_DATA_SCRUB, -}; - -struct bch_data_op { - __u8 type; + BCH_DATA_OP_SCRUB = 0, + BCH_DATA_OP_REREPLICATE = 1, + BCH_DATA_OP_MIGRATE = 2, + BCH_DATA_OP_NR = 3, }; struct bch_ioctl_data { + __u32 op; __u32 flags; - __u32 pad; - - __u64 start_inode; - __u64 start_offset; - __u64 end_inode; - __u64 end_offset; -}; + struct bpos start; + struct bpos end; + + union { + struct { + __u32 dev; + __u32 pad; + } migrate; + }; +} __attribute__((packed, aligned(8))); + +struct bch_ioctl_data_progress { + __u8 data_type; + __u8 btree_id; + __u8 pad[2]; + struct bpos pos; + + __u64 sectors_done; + __u64 sectors_total; +} __attribute__((packed, aligned(8))); struct bch_ioctl_dev_usage { __u8 state; |