Documented in 1 files:

Defined in 1 files as a function:

Referenced in 11 files:

Smatch caller information:

kernel/rcu/tree.c rcu_sr_get_wait_head() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
LOCK2 &rnp->lock
LOCK2 irq
TYPE_LOCK (struct rcu_node)->lock

lib/atomic64_test.c test_atomic() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 244908970501345280
PARAM_VALUE 0 v->counter (-1432153289)
PARAM_VALUE 1 old (-1432153289)
PARAM_VALUE 2 new (-559038737)

lib/atomic64_test.c test_atomic() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 244908970501345280
PARAM_VALUE 0 v->counter (-1432153289)
PARAM_VALUE 1 old 286335522
PARAM_VALUE 2 new (-559038737)

kernel/bpf/stackmap.c bpf_mmap_unlock_guard_get() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 0
PARAM_VALUE 2 new 1

kernel/smp.c csd_lock_wait_toolong() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 1
PARAM_VALUE 2 new 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

kernel/printk/printk.c __printk_cpu_sync_try_get() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 2428578465351639040
PARAM_VALUE 1 old (-1)
PARAM_VALUE 2 new 0
DATA_SOURCE 2 new r debug_smp_processor_id
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

arch/x86/kvm/svm/sev.c sev_lock_two_vms() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 0
PARAM_VALUE 2 new 1

arch/x86/kvm/svm/sev.c sev_lock_two_vms() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 0
PARAM_VALUE 2 new 1

kernel/sched/build_policy.c rto_start_trylock() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 0
PARAM_VALUE 2 new 1
DATA_SOURCE 0 v $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq
HALF_LOCKED2 rq

arch/x86/kvm/lapic.c kvm_recalculate_apic_map() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 2
PARAM_VALUE 2 new 1
LOCK2 &kvm->arch.apic_map_lock
HALF_LOCKED2 &vcpu->mutex
TYPE_LOCK (struct kvm_arch)->apic_map_lock

kernel/bpf/task_iter.c bpf_mmap_unlock_guard_get() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 0
PARAM_VALUE 2 new 1

kernel/locking/osq_lock.c osq_wait_next() -> atomic_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 0 v->counter 1
PARAM_VALUE 1 old 1
DATA_SOURCE 1 old r encode_cpu
DATA_SOURCE 2 new $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING