Lines Matching +full:mi +full:- +full:v
1 /* SPDX-License-Identifier: GPL-2.0 */
35 return a.gen - a.oldest_gen; in alloc_gc_gen()
40 dst->gen = src.gen; in alloc_to_bucket()
41 dst->data_type = src.data_type; in alloc_to_bucket()
42 dst->stripe_sectors = src.stripe_sectors; in alloc_to_bucket()
43 dst->dirty_sectors = src.dirty_sectors; in alloc_to_bucket()
44 dst->cached_sectors = src.cached_sectors; in alloc_to_bucket()
45 dst->stripe = src.stripe; in alloc_to_bucket()
50 dst->gen = src.gen; in __bucket_m_to_alloc()
51 dst->data_type = src.data_type; in __bucket_m_to_alloc()
52 dst->stripe_sectors = src.stripe_sectors; in __bucket_m_to_alloc()
53 dst->dirty_sectors = src.dirty_sectors; in __bucket_m_to_alloc()
54 dst->cached_sectors = src.cached_sectors; in __bucket_m_to_alloc()
55 dst->stripe = src.stripe; in __bucket_m_to_alloc()
84 * It is my general preference to use unsigned types for unsigned quantities -
113 return d ? max(0, ca->mi.bucket_size - d) : 0; in bch2_bucket_sectors_fragmented()
120 return d ? max(0, ca->mi.bucket_size - d) : 0; in bch2_gc_bucket_sectors_fragmented()
146 a->data_type = alloc_data_type(*a, data_type); in alloc_data_type_set()
181 ca->mi.bucket_size); in alloc_lru_idx_fragmentation()
183 return div_u64(d * (1ULL << 31), ca->mi.bucket_size); in alloc_lru_idx_fragmentation()
208 BUG_ON(ret > U8_MAX - BKEY_U64s); in alloc_v4_u64s()
214 set_bkey_val_u64s(&a->k, alloc_v4_u64s(&a->v)); in set_alloc_v4_u64s()
229 if (unlikely(k.k->type != KEY_TYPE_alloc_v4)) in bch2_alloc_to_v4()
232 ret = bkey_s_c_to_alloc_v4(k).v; in bch2_alloc_to_v4()
299 return k->type == KEY_TYPE_alloc || in bkey_is_alloc()
300 k->type == KEY_TYPE_alloc_v2 || in bkey_is_alloc()
301 k->type == KEY_TYPE_alloc_v3; in bkey_is_alloc()
322 u64 want_free = ca->mi.nbuckets >> 7; in should_invalidate_buckets()
326 - bch2_dev_buckets_reserved(ca, BCH_WATERMARK_stripe)); in should_invalidate_buckets()
328 return clamp_t(s64, want_free - free, 0, u.buckets[BCH_DATA_cached]); in should_invalidate_buckets()
336 return (void *) ((u64 *) &a->v + in alloc_v4_backpointers()
343 return (void *) ((u64 *) &a->v + BCH_ALLOC_V4_BACKPOINTERS_START(a)); in alloc_v4_backpointers_c()