bcachefs: Improve bch2_dev_freespace_init()
authorKent Overstreet <kent.overstreet@linux.dev>
Sat, 26 Nov 2022 09:37:11 +0000 (04:37 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:51 +0000 (17:09 -0400)
commitcc65f5659941a4d30608b47c3edfadb5e0e7b02e
tree98a7ec20cdb702fff9d8c3196051851cfff37f66
parent7c057d35098613b2936c361aa8289590fef987ba
bcachefs: Improve bch2_dev_freespace_init()

This makes bch2_dev_freespace_init() much faster: instead of processing
every bucket on the device one at a time, we handle ranges of missing
keys all at once: the freespace btree is an extents style btree, so we
only have to insert one freespace key for every range of missing keys
in the alloc btree.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/alloc_background.c