Documented in 1 files:

Defined in 1 files as a function:

Referenced in 12 files:

Smatch caller information:

kernel/rcu/rcutorture.c rcu_torture_fwd_prog() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 3637200038180208640
PARAM_VALUE 1 new 0

fs/cachefiles/daemon.c cachefiles_do_daemon_read() -> atomic_long_xchg()

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

mm/shrinker.c xchg_nr_deferred() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 new 0
RX_PATH
TASK_NOT_RUNNING

mm/shrinker.c xchg_nr_deferred_memcg() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 new 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

drivers/gpu/drm/scheduler/sched_entity.c spsc_queue_push() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 new s64min-(-4096),4096-s64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &client->hwctx_srcu
HALF_LOCKED2 &gpu->sched_lock
HALF_LOCKED2 &hwctx->priv->io_lock
HALF_LOCKED2 &hwctx->priv->job_sem
HALF_LOCKED2 &p->adev->notifier_lock
HALF_LOCKED2 &pfdev->sched_lock
HALF_LOCKED2 &queue->lock
HALF_LOCKED2 &sched->mutex
HALF_LOCKED2 &v3d->sched_lock
HALF_LOCKED2 &xdna->notifier_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &drm_unplug_srcu

mm/kasan/kasan_test_c.c kasan_atomics_helper() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 new 42
DATA_SOURCE 0 v $1
NOCHECK_CALL

mm/page_counter.c propagate_protected_usage() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
CAPPED_DATA 1 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/page_counter.c propagate_protected_usage() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
CAPPED_DATA 1 new 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

kernel/sched/build_utility.c calc_load_nohz_read() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 new 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &jiffies_lock

drivers/net/wwan/qcom_bam_dmux.c bam_dmux_tx_wakeup_work() -> atomic_long_xchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 new 0
HALF_LOCKED2 &pool->lock