Documented in 1 files:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

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

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

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

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

kernel/bpf/stackmap.c atomic_cmpxchg_acquire() -> raw_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
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2

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

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

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

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

arch/x86/kvm/svm/sev.c atomic_cmpxchg_acquire() -> raw_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
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2

kernel/sched/build_policy.c atomic_cmpxchg_acquire() -> raw_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
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq
HALF_LOCKED2 rq

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

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

kernel/bpf/task_iter.c atomic_cmpxchg_acquire() -> raw_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
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2

kernel/locking/osq_lock.c atomic_cmpxchg_acquire() -> raw_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 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING