diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2022-02-11 02:18:41 +0300 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-23 00:09:29 +0300 |
commit | caece7fe3f1199f0da42b4537434166f99f0c11f (patch) | |
tree | e745fa43f1e55c0f96715c29770ec46b1e462ed4 /fs/bcachefs/lru.h | |
parent | 59cc38b8d43b529d91c249c2eef35c8c3fc9fbd8 (diff) | |
download | linux-caece7fe3f1199f0da42b4537434166f99f0c11f.tar.xz |
bcachefs: New bucket invalidate path
In the old allocator code, preparing an existing empty bucket was part
of the same code path that invalidated buckets containing cached data.
In the new allocator code this is no longer the case: the main allocator
path finds empty buckets (via the new freespace btree), and can't
allocate buckets that contain cached data.
We now need a separate code path to invalidate buckets containing cached
data when we're low on empty buckets, which this patch implements. When
the number of free buckets decreases that triggers the new invalidate
path to run, which uses the LRU btree to pick cached data buckets to
invalidate until we're above our watermark.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/lru.h')
0 files changed, 0 insertions, 0 deletions