]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/buckets_types.h
New upstream snapshot
[bcachefs-tools-debian] / libbcachefs / buckets_types.h
index b2de2995c5e7f5b157a0f0359a1eac8b6bc5672d..2c73dc60b838f08f42da26ded8c6b8a0358a4b20 100644 (file)
@@ -15,18 +15,9 @@ struct bucket_mark {
        u8              gen;
        u8              data_type:3,
                        owned_by_allocator:1,
-                       journal_seq_valid:1,
                        stripe:1;
        u16             dirty_sectors;
        u16             cached_sectors;
-
-       /*
-        * low bits of journal sequence number when this bucket was most
-        * recently modified: if journal_seq_valid is set, this bucket can't be
-        * reused until the journal sequence number written to disk is >= the
-        * bucket's journal sequence number:
-        */
-       u16             journal_seq;
        };
        };
 };
@@ -39,7 +30,6 @@ struct bucket {
 
        u64                             io_time[2];
        u8                              oldest_gen;
-       u8                              gc_gen;
        unsigned                        gen_valid:1;
        u8                              stripe_redundancy;
        u32                             stripe;
@@ -52,6 +42,13 @@ struct bucket_array {
        struct bucket           b[];
 };
 
+struct bucket_gens {
+       struct rcu_head         rcu;
+       u16                     first_bucket;
+       size_t                  nbuckets;
+       u8                      b[];
+};
+
 struct bch_dev_usage {
        u64                     buckets_ec;
        u64                     buckets_unavailable;