bcachefs: Improve stripe triggers/heap code
authorKent Overstreet <kent.overstreet@gmail.com>
Tue, 7 Jul 2020 00:18:13 +0000 (20:18 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:08:42 +0000 (17:08 -0400)
commitba6dd1dd493f4e621350fa963e3a95686aaf8a4d
treed0537a455302f665c62b13669d99928f2722e6cd
parente63534a20117e937b3712acaedb98f208ff6b862
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>
fs/bcachefs/bcachefs.h
fs/bcachefs/btree_gc.c
fs/bcachefs/buckets.c
fs/bcachefs/ec.c
fs/bcachefs/ec.h
fs/bcachefs/ec_types.h
fs/bcachefs/super.c
fs/bcachefs/sysfs.c