Documented in 1 files:

Defined in 1 files as a macro:

Defined in 1 files as a function:

Referenced in 13 files:

Smatch caller information:

kernel/rcu/tree.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 257930615975178240
PARAM_VALUE 1 old 5601350577436348416
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
HALF_LOCKED2 irq

kernel/trace/trace_snapshot.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 416679759330988032
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

kernel/bpf/bpf_local_storage.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 7382926982970454016
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 b_flags
HALF_LOCKED2 rcu_read

mm/userfaultfd.c __refcount_add_not_zero_limited_acquire() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 1703164195247702016
PARAM_VALUE 1 *old s32min-(-1),1-s32max
PARAM_VALUE 2 new (-2147483647)-0
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

kernel/trace/trace_sched_switch.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 3552495958108536832
PARAM_VALUE 1 old 5686909295131701248
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock

kernel/trace/trace_sched_switch.c queued_spin_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 3552495958108536832
PARAM_VALUE 1 old 424242283327086592
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
RX_PATH
TASK_NOT_RUNNING

kernel/bpf/stackmap.c __refcount_add_not_zero_limited_acquire() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 3428337456143360000
PARAM_VALUE 1 *old s32min-(-1),1-s32max
PARAM_VALUE 2 new (-2147483647)-0
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

arch/x86/kernel/dumpstack.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 619399257733775360
PARAM_VALUE 1 old 1384887035004948480
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

arch/x86/kernel/dumpstack.c queued_spin_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 619399257733775360
PARAM_VALUE 1 old 7849133356246671360
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

kernel/crash_core.c kexec_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 6334040747821723648
PARAM_VALUE 1 old 2905387502400172032
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &__crash_hotplug_lock

kernel/kexec_core.c kexec_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 6334040747821723648
PARAM_VALUE 1 old 9046767599331323904
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
LOCK2 global &system_transition_mutex

kernel/bpf/rqspinlock.c queued_spin_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 3040634137164173312
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 irq_flags

kernel/bpf/rqspinlock.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 4520630708142030848
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
HALF_LOCKED2 flags

kernel/locking/locktorture.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 3025735878643646464
PARAM_VALUE 1 old 7284000240661651456
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
HALF_LOCKED2 flags
HALF_LOCKED2 global &torture_mutex
HALF_LOCKED2 global &torture_raw_spinlock
HALF_LOCKED2 global &torture_rwlock
HALF_LOCKED2 global &torture_rwsem
HALF_LOCKED2 global &torture_spinlock

kernel/bpf/queue_stack_maps.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4740414463946858496
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
HALF_LOCKED2 flags
HALF_LOCKED2 irq_flags

kernel/locking/lockdep.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 7115602195117199360
PARAM_VALUE 1 old 5401732478931591168
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/trace/trace_clock.c queued_spin_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 7116197974504153096
PARAM_VALUE 1 old 5913677935735259136
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 _T->lock

kernel/sched/fair.c sched_balance_rq() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 2266490158624403456
PARAM_VALUE 1 old 1075020818721202176
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 busiest
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

kernel/locking/qspinlock.c queued_spin_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 7588752340481904640
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1

arch/x86/mm/kmmio.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 7178805435087433728
PARAM_VALUE 1 old 9091935580394295296
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 global &trace_lock
HALF_LOCKED2 irq

kernel/bpf/arena.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4976252783670292480
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

kernel/trace/trace.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 1658855900188635136
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tr->start_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/bpf/lpm_trie.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 7254713322144735232
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
LOCK2 irq_flags

kernel/trace/trace_stack.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 6849484529327005696
PARAM_VALUE 1 old 3919550098052579328
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/trace/ring_buffer.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 1565323423261671424
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &cpu_buffer->reader_lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

arch/x86/kernel/hpet.c queued_spin_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 7393544215196495872
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 global &watchdog_lock
HALF_LOCKED2 irq

mm/mmap_lock.c __refcount_add_not_zero_limited_acquire() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4868473573090222080
PARAM_VALUE 1 *old s32min-(-1),1-s32max
PARAM_VALUE 2 new (-2147483647)-0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock

kernel/bpf/percpu_freelist.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 9193809385686986752
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
LOCK2 flags

kernel/trace/trace_sched_wakeup.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 8487020798062653440
PARAM_VALUE 1 old 3266075964681424896
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

kernel/kexec_file.c kexec_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 6334040747821723648
PARAM_VALUE 1 old 6309403890084536320
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1

arch/x86/kernel/tsc_sync.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 77238662362324992
PARAM_VALUE 1 old 1603638842138656768
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
RX_PATH
TASK_NOT_RUNNING

kernel/locking/spinlock_debug.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 2491656056814579712
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/locking/spinlock_debug.c queued_spin_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 518385227469565952
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/locking/spinlock_debug.c queued_write_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 1656362534899687424
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 v->counter s32min-s32max
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/locking/spinlock_debug.c queued_write_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 8930833464982659072
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 v->counter s32min-s32max
HOST_DATA 1 *old 0
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/kexec.c kexec_trylock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 6334040747821723648
PARAM_VALUE 1 old 1373966472668696576
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1

kernel/bpf/bpf_lru_list.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4423409244492771328
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
HALF_LOCKED2 flags

kernel/bpf/ringbuf.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4028186709628645376
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
LOCK2 flags

kernel/bpf/hashtab.c res_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 7988598438748405760
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
LOCK2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/helpers.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 1 old 2848054297598083072
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags

kernel/locking/qrwlock.c queued_spin_lock() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 2489627443676971008
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

kernel/locking/qrwlock.c queued_write_lock_slowpath() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 0 v->counter 0
PARAM_VALUE 1 old 4114135176079962112
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new 255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/locking/qrwlock.c queued_write_lock_slowpath() -> atomic_try_cmpxchg_acquire()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4114135176079962112
PARAM_VALUE 1 *old 256
PARAM_VALUE 2 new 255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 irq