Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

io_uring/rsrc.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 1751475298139521024
PARAM_VALUE 2 new 0-4503599627370495
CAPPED_DATA 2 new 1
CAPPED_DATA 2 new 1
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
RX_PATH
UNITS 2 new unit_page
HALF_LOCKED2 &ctx->uring_lock

kernel/entry/common.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 1401492145688125440
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
HALF_LOCKED2 irq

mm/swapfile.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 2318994525795917824,4075824949997199360
PARAM_VALUE 1 *old 0-4294967295
PARAM_VALUE 2 new 1073741824-5368709119
CAPPED_DATA 2 new 1
CAPPED_DATA 2 new 1
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
BIT_INFO 2 new 0x40000000,0xffffffff
BIT_INFO 2 new 0x40000000,0xffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &swap_avail_lock

net/core/skbuff.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 7334220749825212416
PARAM_VALUE 2 new 0-4503599627370495
CAPPED_DATA 2 new 1
CAPPED_DATA 2 new 1
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
CAPABLE 0 14
RX_PATH
TASK_NOT_RUNNING
UNITS 2 new unit_page

mm/zswap.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 3755544511127392256
PARAM_VALUE 2 new 0-9223372036854775806
BUF_SIZE 0 v 8
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock

drivers/iommu/iommufd/pages.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4092092991771197440
PARAM_VALUE 2 new 0-4503599627370495
CAPPED_DATA 2 new 1
CAPPED_DATA 2 new 1
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
RX_PATH
UNITS 2 new unit_page
HALF_LOCKED2 &ictx->ioas_creation_lock
HALF_LOCKED2 &pages->mutex

kernel/ucount.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 1496547599177019392
PARAM_VALUE 1 *old s64min-2147483646
PARAM_VALUE 2 new (-9223372036854775807)-s32max
CAPPED_DATA 2 new 1
CAPPED_DATA 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 &group->mark_mutex

kernel/printk/printk_ringbuffer.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 3865464208092422144,4077458878392369152,4988204513999183872,5230628965292457984,6930481050113691648,7325683828411396096,8568208861569654784
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 2 new unit_byte
HALF_LOCKED2 e->irqflags
HALF_LOCKED2 irqflags

fs/file_table.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 7414161574144356352
PARAM_VALUE 1 *old 0
PARAM_VALUE 2 new (-2305843009213693952)
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/process.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 6665394786437787648
PARAM_VALUE 2 new 0
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
LOCK2 irq

mm/kasan/kasan_test_c.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

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

arch/x86/kernel/cpu/mce/core.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

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

arch/x86/kernel/traps.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

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

lib/sbitmap.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 6205475200957702144
BUF_SIZE 0 v 8
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
RX_PATH
TASK_NOT_RUNNING

kernel/printk/nbcon.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 2187959437525630976,8806490009770831872
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->flags
HALF_LOCKED2 flags

arch/x86/coco/sev/vc-handle.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

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

arch/x86/entry/syscall_32.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 5551628119017115648
PARAM_VALUE 2 new 0
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
LOCK2 irq

drivers/block/zram/zram_drv.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 2555843663067082752
PARAM_VALUE 1 *old s64min-(-2),0-s64max
PARAM_VALUE 2 new s64min-(-1),1-s64max
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &zstrm->lock

kernel/dma/swiotlb.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 434787441655873536
PARAM_VALUE 1 *old s64min-(-2),0-s64max
PARAM_VALUE 2 new s64min-(-1),1-s64max
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2

arch/x86/entry/syscall_64.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 4295016228825612288
PARAM_VALUE 2 new 0
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
LOCK2 irq

kernel/locking/rwsem.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
PARAM_VALUE 1 old 2745872330469511168,8268593127486734336
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/tty/tty_ldsem.c atomic_long_try_cmpxchg() -> raw_atomic_long_try_cmpxchg()

Type Parameter Key Value
PARAM_VALUE 0 v 4096-ptr_max
DATA_SOURCE 0 v $0
DATA_SOURCE 1 old $1
DATA_SOURCE 2 new $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sem->wait_lock
HALF_LOCKED2 irq