arc_c
(arc_c - arc_p)));
target = MIN((int64_t)(asize - arc_c),
target = asize - arc_c;
zfs_refcount_count(&arc_mru_ghost->arcs_size) - arc_c;
zfs_refcount_count(&arc_mfu_ghost->arcs_size) - arc_c;
if (arc_c > arc_c_min) {
if (arc_c > arc_c_min + to_free)
atomic_add_64(&arc_c, -to_free);
arc_c = arc_c_min;
if (asize < arc_c)
arc_c = MAX(asize, arc_c_min);
if (arc_p > arc_c)
arc_p = (arc_c >> 1);
ASSERT(arc_c >= arc_c_min);
if (asize > arc_c) {
evicted > 0 && aggsum_compare(&arc_size, arc_c) > 0;
} else if (free_memory < arc_c >> arc_no_grow_shift) {
(arc_c >> arc_shrink_shift) - free_memory;
uint64_t arc_p_min = (arc_c >> arc_p_min_shift);
arc_p = MIN(arc_c - arc_p_min, arc_p + bytes * mult);
if (arc_c >= arc_c_max)
if (aggsum_compare(&arc_size, arc_c - (2ULL << SPA_MAXBLOCKSHIFT)) >
atomic_add_64(&arc_c, (int64_t)bytes);
if (arc_c > arc_c_max)
arc_c = arc_c_max;
if (arc_p > arc_c)
arc_p = arc_c;
arc_c >> zfs_arc_overflow_shift);
return (aggsum_lower_bound(&arc_size) >= arc_c + overflow);
if (aggsum_compare(&arc_size, arc_c) < 0 &&
arc_p = MIN(arc_c, arc_p + size);
if (reserve > arc_c/4 && !arc_no_grow)
arc_c = MIN(arc_c_max, reserve * 4);
if (reserve > arc_c)
if (total_dirty > arc_c * zfs_arc_dirty_limit_percent / 100 &&
anon_size > arc_c * zfs_arc_anon_limit_percent / 100 &&
data_esize >> 10, reserve >> 10, arc_c >> 10);
arc_c = arc_c_max;
arc_p = (arc_c >> 1);
arc_c = arc_c / 2;
if (arc_c < arc_c_min)
arc_c = arc_c_min;
(s > (arc_warm ? arc_c : arc_c_max) * l2arc_meta_percent / 100));