From b7f648e2ec3c3a06fc1397b2f3e88480da56b7ad Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Fri, 7 Feb 2025 17:12:47 -0500 Subject: [PATCH] bcachefs: Add comment explaining why asserts in invalidate_one_bucket() are impossible Signed-off-by: Kent Overstreet --- fs/bcachefs/alloc_background.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/fs/bcachefs/alloc_background.c b/fs/bcachefs/alloc_background.c index 43c29b0d2d20..a35455802280 100644 --- a/fs/bcachefs/alloc_background.c +++ b/fs/bcachefs/alloc_background.c @@ -2093,6 +2093,13 @@ static int invalidate_one_bucket(struct btree_trans *trans, if (lru_pos_time(lru_iter->pos) != alloc_lru_idx_read(a->v)) goto out; + /* + * Impossible since alloc_lru_idx_read() only returns nonzero if the + * bucket is supposed to be on the cached bucket LRU (i.e. + * BCH_DATA_cached) + * + * bch2_lru_validate() also disallows lru keys with lru_pos_time() == 0 + */ BUG_ON(a->v.data_type != BCH_DATA_cached); BUG_ON(a->v.dirty_sectors); -- 2.50.1