summaryrefslogtreecommitdiff
path: root/fs/bcachefs/ec_types.h
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2020-07-07 03:18:13 +0300
committerKent Overstreet <kent.overstreet@linux.dev>2023-10-23 00:08:42 +0300
commitba6dd1dd493f4e621350fa963e3a95686aaf8a4d (patch)
treed0537a455302f665c62b13669d99928f2722e6cd /fs/bcachefs/ec_types.h
parente63534a20117e937b3712acaedb98f208ff6b862 (diff)
downloadlinux-ba6dd1dd493f4e621350fa963e3a95686aaf8a4d.tar.xz
bcachefs: Improve stripe triggers/heap code
Soon we'll be able to modify existing stripes - replacing empty blocks with new blocks and new p/q blocks. This patch updates the trigger code to handle pointers changing in an existing stripe; also, it significantly improves how the stripes heap works, which means we can get rid of the stripe creation/deletion lock. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/ec_types.h')
-rw-r--r--fs/bcachefs/ec_types.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/bcachefs/ec_types.h b/fs/bcachefs/ec_types.h
index 5c3f77c8aac7..e4d633fca5bf 100644
--- a/fs/bcachefs/ec_types.h
+++ b/fs/bcachefs/ec_types.h
@@ -22,6 +22,7 @@ struct stripe {
unsigned alive:1;
unsigned dirty:1;
+ unsigned on_heap:1;
u8 blocks_nonempty;
u16 block_sectors[EC_STRIPE_MAX];