summaryrefslogtreecommitdiff
path: root/fs/bcachefs/alloc_foreground.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2021-12-26 03:55:34 +0300
committerKent Overstreet <kent.overstreet@linux.dev>2023-10-23 00:09:20 +0300
commita786087744fcff140ecce0e1dd93a43186edf8ad (patch)
tree7d1dcd71ac2883793415da6ebe045f999ceaeb3b /fs/bcachefs/alloc_foreground.c
parent47ac34ec988f01e1e0d00a5281abe0812bad4fcc (diff)
downloadlinux-a786087744fcff140ecce0e1dd93a43186edf8ad.tar.xz
bcachefs: New in-memory array for bucket gens
The main in-memory bucket array is going away, but we'll still need to keep bucket generations in memory, at least for now - ptr_stale() needs to be an efficient operation. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/alloc_foreground.c')
-rw-r--r--fs/bcachefs/alloc_foreground.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/bcachefs/alloc_foreground.c b/fs/bcachefs/alloc_foreground.c
index 7506d54c854b..e2038032b872 100644
--- a/fs/bcachefs/alloc_foreground.c
+++ b/fs/bcachefs/alloc_foreground.c
@@ -161,7 +161,7 @@ static void verify_not_stale(struct bch_fs *c, const struct open_buckets *obs)
open_bucket_for_each(c, obs, ob, i) {
struct bch_dev *ca = bch_dev_bkey_exists(c, ob->dev);
- BUG_ON(bucket(ca, ob->bucket)->mark.gen != ob->gen);
+ BUG_ON(*bucket_gen(ca, ob->bucket) != ob->gen);
}
rcu_read_unlock();
#endif
@@ -273,7 +273,7 @@ out:
ob->sectors_free = ca->mi.bucket_size;
ob->alloc_reserve = reserve;
ob->dev = ca->dev_idx;
- ob->gen = bucket(ca, b)->mark.gen;
+ ob->gen = *bucket_gen(ca, b);
ob->bucket = b;
spin_unlock(&ob->lock);