]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/move_types.h
Update bcachefs sources to c3e4d892b77b mean and variance: Promote to lib/math
[bcachefs-tools-debian] / libbcachefs / move_types.h
index 285ffdb762aca17ab9769ca2ab36b7e404c2dd3e..e22841ef31e475fdfa11d8dcc7d48adb8d333897 100644 (file)
@@ -2,23 +2,34 @@
 #ifndef _BCACHEFS_MOVE_TYPES_H
 #define _BCACHEFS_MOVE_TYPES_H
 
+#include "bbpos_types.h"
+
 struct bch_move_stats {
        enum bch_data_type      data_type;
-       enum btree_id           btree_id;
-       struct bpos             pos;
-       struct list_head        list;
+       struct bbpos            pos;
        char                    name[32];
 
        atomic64_t              keys_moved;
        atomic64_t              keys_raced;
-       atomic64_t              sectors_moved;
        atomic64_t              sectors_seen;
+       atomic64_t              sectors_moved;
        atomic64_t              sectors_raced;
 };
 
-struct move_bucket_in_flight {
+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;
 };