summaryrefslogtreecommitdiff
path: root/fs/bcachefs/alloc_background_format.h
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2023-11-23 17:21:23 -0500
committerKent Overstreet <kent.overstreet@linux.dev>2024-07-14 19:00:12 -0400
commit55f7962da3bb2d34525c1973189413a113667a24 (patch)
tree5a318e63f6e3e71690f21ef59a99858087772e98 /fs/bcachefs/alloc_background_format.h
parentc13d526d9dc1aa0c4962b017c881c28c1e23ca26 (diff)
bcachefs: bch_alloc->stripe_sectors
Add a separate counter to bch_alloc_v4 for amount of striped data; this lets us separately track striped and unstriped data in a bucket, which lets us see when erasure coding has failed to update extents with stripe pointers, and also find buckets to continue updating if we crash mid way through creating a new stripe. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/alloc_background_format.h')
-rw-r--r--fs/bcachefs/alloc_background_format.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/bcachefs/alloc_background_format.h b/fs/bcachefs/alloc_background_format.h
index b4ec20be93b8..47d9d006502c 100644
--- a/fs/bcachefs/alloc_background_format.h
+++ b/fs/bcachefs/alloc_background_format.h
@@ -70,6 +70,8 @@ struct bch_alloc_v4 {
__u32 stripe;
__u32 nr_external_backpointers;
__u64 fragmentation_lru;
+ __u32 stripe_sectors;
+ __u32 pad;
} __packed __aligned(8);
#define BCH_ALLOC_V4_U64s_V0 6