summaryrefslogtreecommitdiff
path: root/libbcachefs/buckets_types.h
diff options
context:
space:
mode:
Diffstat (limited to 'libbcachefs/buckets_types.h')
-rw-r--r--libbcachefs/buckets_types.h35
1 files changed, 9 insertions, 26 deletions
diff --git a/libbcachefs/buckets_types.h b/libbcachefs/buckets_types.h
index 2c73dc60..e79a3379 100644
--- a/libbcachefs/buckets_types.h
+++ b/libbcachefs/buckets_types.h
@@ -7,32 +7,15 @@
#define BUCKET_JOURNAL_SEQ_BITS 16
-struct bucket_mark {
- union {
- atomic64_t v;
-
- struct {
- u8 gen;
- u8 data_type:3,
- owned_by_allocator:1,
- stripe:1;
- u16 dirty_sectors;
- u16 cached_sectors;
- };
- };
-};
-
struct bucket {
- union {
- struct bucket_mark _mark;
- const struct bucket_mark mark;
- };
-
- u64 io_time[2];
- u8 oldest_gen;
- unsigned gen_valid:1;
- u8 stripe_redundancy;
- u32 stripe;
+ u8 lock;
+ u8 gen_valid:1;
+ u8 data_type:7;
+ u8 gen;
+ u8 stripe_redundancy;
+ u32 stripe;
+ u32 dirty_sectors;
+ u32 cached_sectors;
};
struct bucket_array {
@@ -111,7 +94,7 @@ struct copygc_heap_entry {
u8 dev;
u8 gen;
u8 replicas;
- u16 fragmentation;
+ u32 fragmentation;
u32 sectors;
u64 offset;
};