Lines Matching refs:count
98 atomic_long_set(&data->count, start_count); in percpu_ref_init()
141 ref->percpu_count_ptr |= atomic_long_read(&ref->data->count) << in percpu_ref_exit()
174 unsigned long count = 0; in percpu_ref_switch_to_atomic_rcu() local
178 count += *per_cpu_ptr(percpu_count, cpu); in percpu_ref_switch_to_atomic_rcu()
181 atomic_long_read(&data->count), count); in percpu_ref_switch_to_atomic_rcu()
195 atomic_long_add((long)count - PERCPU_COUNT_BIAS, &data->count); in percpu_ref_switch_to_atomic_rcu()
197 if (WARN_ONCE(atomic_long_read(&data->count) <= 0, in percpu_ref_switch_to_atomic_rcu()
199 data->release, atomic_long_read(&data->count)) && in percpu_ref_switch_to_atomic_rcu()
250 atomic_long_add(PERCPU_COUNT_BIAS, &ref->data->count); in __percpu_ref_switch_to_percpu()
413 unsigned long count, flags; in percpu_ref_is_zero() local
421 count = atomic_long_read(&ref->data->count); in percpu_ref_is_zero()
423 count = ref->percpu_count_ptr >> __PERCPU_REF_FLAG_BITS; in percpu_ref_is_zero()
426 return count == 0; in percpu_ref_is_zero()