Documented in 1 files:
Defined in 1 files as a function:
Referenced in 13 files:
- arch/mips/net/bpf_jit_comp32.c, line 930
- arch/powerpc/mm/book3s64/iommu_api.c, line 267
- fs/btrfs/extent_map.c, line 1386
- fs/ext4/fast_commit.c, line 273
- fs/hfs/catalog.c
- include/asm-generic/local64.h, line 92
- kernel/bpf/core.c, line 2348
- kernel/cgroup/misc.c, line 120
- lib/test_lockup.c, line 237
- net/core/sock_diag.c, line 33
- net/mptcp/options.c, line 1347
- rust/helpers/atomic.c, line 911
- security/landlock/id.c, line 39
Smatch caller information:
net/core/sock_diag.c __sock_gen_cookie() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | old | 0 |
| DATA_SOURCE | 2 | new | r gen_cookie_next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &seq->lock | ||
| HALF_LOCKED2 | rcu_read |
lib/atomic64_test.c test_atomic64() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4852880703011659776 |
| PARAM_VALUE | 0 | v->counter | (-6151051535892492275) |
| PARAM_VALUE | 1 | old | (-6151051535892492275) |
| PARAM_VALUE | 2 | new | (-2401053088876082434) |
lib/atomic64_test.c test_atomic64() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4852880703011659776 |
| PARAM_VALUE | 0 | v->counter | (-6151051535892492275) |
| PARAM_VALUE | 1 | old | (-374172955480035327) |
| PARAM_VALUE | 2 | new | (-2401053088876082434) |
fs/ext4/fast_commit.c ext4_fc_snap_stats_update_max() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | old | s64min-(-2),0-s64max |
| PARAM_VALUE | 2 | new | s64min-(-1),1-s64max |
| CAPPED_DATA | 1 | old | 1 |
| DATA_SOURCE | 0 | v | $0 |
| DATA_SOURCE | 2 | new | $1 |
| PARAM_COMPARE | 1 | old | < $2 |
| PARAM_COMPARE | 2 | new | > $1 |
| BIT_INFO | 1 | old | 0x0,0x7fffffffffffffff |
| BIT_INFO | 2 | new | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &inode->i_rwsem |
security/landlock/id.c init_id() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 110462154930520064,6643675793384673280,6655470504887341056,8776791297932079104 |
| PARAM_VALUE | 1 | old | 0 |
| PARAM_VALUE | 2 | new | 4294967296-8589934591 |
| DATA_SOURCE | 0 | v | $0 |
| NOCHECK_CALL |
lib/test_lockup.c test_lock() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 6356003204875952128 |
| CAPPED_DATA | 1 | old | 1 |
| CAPPED_DATA | 1 | old | 1 |
| PARAM_COMPARE | 1 | old | <= $2 |
| PARAM_COMPARE | 2 | new | >= $1 |
| PARAM_COMPARE | 2 | new | >= $1 |
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | global &main_task->mm->mmap_lock | ||
| HALF_LOCKED2 | global lock_mutex_ptr | ||
| HALF_LOCKED2 | global lock_rwlock_ptr | ||
| HALF_LOCKED2 | global lock_rwsem_ptr | ||
| HALF_LOCKED2 | global lock_spinlock_ptr | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | rcu_read |
fs/btrfs/extent_map.c btrfs_free_extent_maps() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | old | 0 |
| PARAM_VALUE | 2 | new | 0,s64max |
| CAPPED_DATA | 2 | new | 1 |
| CAPPED_DATA | 2 | new | 1 |
| DATA_SOURCE | 2 | new | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &sb->s_umount | ||
| HALF_LOCKED2 | global &bch_register_lock | ||
| TYPE_LOCK | (struct super_block)->s_umount |
fs/hfs/catalog.c hfs_set_next_unused_CNID() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | old | 0-4294967295 |
| PARAM_VALUE | 2 | new | 16 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &(sb->s_fs_info)->cat_tree->tree_lock | ||
| HALF_LOCKED2 | &(sb->s_fs_info)->ext_tree->tree_lock | ||
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dir->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
fs/hfs/catalog.c hfs_set_next_unused_CNID() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | old | 0-4294967295 |
| PARAM_VALUE | 2 | new | 0-4294967295 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &(sb->s_fs_info)->cat_tree->tree_lock | ||
| HALF_LOCKED2 | &(sb->s_fs_info)->ext_tree->tree_lock | ||
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dir->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
net/mptcp/options.c mptcp_set_rwin() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4096-ptr_max |
| BIT_INFO | 1 | old | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 2 | new | unit_byte |
| HALF_LOCKED2 | &sk->sk_lock.slock | ||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | sk |
kernel/cgroup/misc.c misc_cg_update_watermark() -> atomic64_cmpxchg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | v | 4096-ptr_max |
| PARAM_VALUE | 1 | old | s64min-(-2),0-s64max |
| PARAM_VALUE | 2 | new | s64min-(-1),1-s64max |
| CAPPED_DATA | 1 | old | 1 |
| CAPPED_DATA | 2 | new | 1 |
| DATA_SOURCE | 2 | new | $1 |
| PARAM_COMPARE | 1 | old | < $2 |
| PARAM_COMPARE | 2 | new | > $1 |
| BIT_INFO | 2 | new | 0x0,0x7fffffffffffffff |
| HALF_LOCKED2 | &kvm->lock | ||
| HALF_LOCKED2 | &kvm->slots_lock |