diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2021-01-21 21:52:06 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:08:52 -0400 |
commit | 180fb49dea90dfbac591b9b201a4dfb75159f5f0 (patch) | |
tree | 36e637ce2b6d2f8adf1a06a1aaa175f6179b5645 /fs/bcachefs/buckets.h | |
parent | 2abe542087d9cb1bc7bb8ac7ae262afccbdb7aa6 (diff) | |
download | lwn-180fb49dea90dfbac591b9b201a4dfb75159f5f0.tar.gz lwn-180fb49dea90dfbac591b9b201a4dfb75159f5f0.zip |
bcachefs: Journal updates to dev usage
This eliminates the need to scan every bucket to regenerate dev_usage at
mount time.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/buckets.h')
-rw-r--r-- | fs/bcachefs/buckets.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/bcachefs/buckets.h b/fs/bcachefs/buckets.h index 50989d286190..c965c4d48218 100644 --- a/fs/bcachefs/buckets.h +++ b/fs/bcachefs/buckets.h @@ -162,8 +162,6 @@ static inline bool bucket_needs_journal_commit(struct bucket_mark m, struct bch_dev_usage bch2_dev_usage_read(struct bch_dev *); -void bch2_dev_usage_from_buckets(struct bch_fs *); - static inline u64 __dev_buckets_available(struct bch_dev *ca, struct bch_dev_usage stats) { @@ -207,6 +205,11 @@ static inline unsigned fs_usage_u64s(struct bch_fs *c) READ_ONCE(c->replicas.nr); } +static inline unsigned dev_usage_u64s(void) +{ + return sizeof(struct bch_dev_usage) / sizeof(u64); +} + void bch2_fs_usage_scratch_put(struct bch_fs *, struct bch_fs_usage_online *); struct bch_fs_usage_online *bch2_fs_usage_scratch_get(struct bch_fs *); |