summaryrefslogtreecommitdiff
path: root/libbcachefs/bcachefs_ioctl.h
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2017-12-22 20:37:52 -0500
committerKent Overstreet <kent.overstreet@gmail.com>2017-12-23 00:51:17 -0500
commit14117dcdfb3942d08f8c6446aae9df9f8d2e42db (patch)
tree52943d664e2e820bc404da8860ae98cfe1830d8b /libbcachefs/bcachefs_ioctl.h
parentda37a5f2043c9e7c90168eea88b326d40734567a (diff)
Update bcachefs sources to 2afdc642c2 bcachefs: kill bucket_data_type, improve disk usage stats
Diffstat (limited to 'libbcachefs/bcachefs_ioctl.h')
-rw-r--r--libbcachefs/bcachefs_ioctl.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/libbcachefs/bcachefs_ioctl.h b/libbcachefs/bcachefs_ioctl.h
index 5bdbbe6e..079e2b55 100644
--- a/libbcachefs/bcachefs_ioctl.h
+++ b/libbcachefs/bcachefs_ioctl.h
@@ -45,6 +45,7 @@ struct bch_ioctl_incremental {
#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)
struct bch_ioctl_query_uuid {
uuid_le uuid;
@@ -93,4 +94,33 @@ struct bch_ioctl_data {
__u64 end_offset;
};
+struct bch_ioctl_dev_usage {
+ __u8 state;
+ __u8 alive;
+ __u8 pad[6];
+ __u32 dev;
+
+ __u32 bucket_size;
+ __u64 nr_buckets;
+
+ __u64 buckets[BCH_DATA_NR];
+ __u64 sectors[BCH_DATA_NR];
+};
+
+struct bch_ioctl_fs_usage {
+ __u64 capacity;
+ __u64 used;
+ __u64 online_reserved;
+ __u64 persistent_reserved[BCH_REPLICAS_MAX];
+ __u64 sectors[BCH_DATA_NR][BCH_REPLICAS_MAX];
+};
+
+struct bch_ioctl_usage {
+ __u16 nr_devices;
+ __u16 pad[3];
+
+ struct bch_ioctl_fs_usage fs;
+ struct bch_ioctl_dev_usage devs[0];
+};
+
#endif /* _BCACHEFS_IOCTL_H */