]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/move_types.h
Update bcachefs sources to bed61fae3b bcachefs: Delete a faulty assertion
[bcachefs-tools-debian] / libbcachefs / move_types.h
index 0e2275e2d3f5af160721c0630cc962d6987685fd..baf1f8570b3fe05f1733ae9be1cfa28c9e3db933 100644 (file)
@@ -1,4 +1,36 @@
-#ifndef _BCACHE_MOVE_TYPES_H
-#define _BCACHE_MOVE_TYPES_H
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _BCACHEFS_MOVE_TYPES_H
+#define _BCACHEFS_MOVE_TYPES_H
 
-#endif /* _BCACHE_MOVE_TYPES_H */
+struct bch_move_stats {
+       enum bch_data_type      data_type;
+       enum btree_id           btree_id;
+       struct bpos             pos;
+       struct list_head        list;
+       char                    name[32];
+
+       atomic64_t              keys_moved;
+       atomic64_t              keys_raced;
+       atomic64_t              sectors_moved;
+       atomic64_t              sectors_seen;
+       atomic64_t              sectors_raced;
+};
+
+struct move_bucket_key {
+       struct bpos             bucket;
+       u8                      gen;
+};
+
+struct move_bucket {
+       struct move_bucket_key  k;
+       unsigned                sectors;
+};
+
+struct move_bucket_in_flight {
+       struct move_bucket_in_flight *next;
+       struct rhash_head       hash;
+       struct move_bucket      bucket;
+       atomic_t                count;
+};
+
+#endif /* _BCACHEFS_MOVE_TYPES_H */