mirror of
https://github.com/koverstreet/bcachefs-tools.git
synced 2025-12-08 00:00:12 +03:00
Some checks failed
build / bcachefs-tools-deb (ubuntu-22.04) (push) Has been cancelled
build / bcachefs-tools-deb (ubuntu-24.04) (push) Has been cancelled
build / bcachefs-tools-rpm (push) Has been cancelled
build / bcachefs-tools-msrv (push) Has been cancelled
Nix-Tests / nix-flake-check (push) Has been cancelled
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
28 lines
555 B
C
28 lines
555 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _BCACHEFS_LRU_FORMAT_H
|
|
#define _BCACHEFS_LRU_FORMAT_H
|
|
|
|
struct bch_lru {
|
|
struct bch_val v;
|
|
__le64 idx;
|
|
} __packed __aligned(8);
|
|
|
|
#define BCH_LRU_TYPES() \
|
|
x(read) \
|
|
x(fragmentation) \
|
|
x(stripes)
|
|
|
|
enum bch_lru_type {
|
|
#define x(n) BCH_LRU_##n,
|
|
BCH_LRU_TYPES()
|
|
#undef x
|
|
};
|
|
|
|
#define BCH_LRU_BUCKET_FRAGMENTATION ((1U << 16) - 1)
|
|
#define BCH_LRU_STRIPE_FRAGMENTATION ((1U << 16) - 2)
|
|
|
|
#define LRU_TIME_BITS 48
|
|
#define LRU_TIME_MAX ((1ULL << LRU_TIME_BITS) - 1)
|
|
|
|
#endif /* _BCACHEFS_LRU_FORMAT_H */
|