Documented in 1 files:

Defined in 1 files as a function:

Referenced in 18 files:

Smatch caller information:

net/core/sock_diag.c gen_cookie_next() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
PARAM_VALUE 1 v 5079040435271131200
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 rcu_read

lib/atomic64_test.c test_atomic64() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 1229782938533634594
PARAM_VALUE 1 v 4852880703011659776
PARAM_VALUE 1 v->counter (-6151051535892492275)

lib/atomic64_test.c test_atomic64() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i (-1)
PARAM_VALUE 1 v 4852880703011659776
PARAM_VALUE 1 v->counter (-6151051535892492275)

fs/pidfs.c gen_cookie_next() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
PARAM_VALUE 1 v 7091871478915149888
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/infiniband/sw/rdmavt/qp.c rvt_ruc_loopback() -> atomic64_add_return()

Type Parameter Key Value
BUF_SIZE 1 v 256
BUF_SIZE 1 v 256
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
UNITS 1 v unit_byte
LOCK2 &qp->r_lock
LOCK2 flags
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rvt_qp)->r_lock

drivers/scsi/mpt3sas/mpt3sas_base.c _base_get_high_iops_msix_index() -> atomic64_add_return()

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

drivers/scsi/mpt3sas/mpt3sas_base.c _base_get_msix_index() -> atomic64_add_return()

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

net/netfilter/nft_quota.c nft_overquota() -> atomic64_add_return()

Type Parameter Key Value
UNITS 0 i unit_byte

kernel/bpf/syscall.c gen_cookie_next() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
PARAM_VALUE 1 v 2651929724255735872
PREEMPT_ADD

drivers/infiniband/core/umem.c __ib_umem_get_va() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 1-4294967295
CAPPED_DATA 0 i 1
DATA_SOURCE 0 i r ib_umem_num_pages
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 i 1-4294967295
HALF_LOCKED2 &context->db_page_mutex

kernel/cgroup/pids.c pids_charge() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 1
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &cgroup_mutex

kernel/cgroup/pids.c pids_try_charge() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 1
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cgroup_mutex

drivers/gpu/drm/xe/xe_bo.c update_global_total_pages() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 i (-4294967295)-4294967295[c]

drivers/infiniband/hw/hfi1/rc.c hfi1_rc_rcv() -> atomic64_add_return()

Type Parameter Key Value
BUF_SIZE 1 v 256
BUF_SIZE 1 v 256
DATA_SOURCE 0 i r get_ib_ateth_swap
PREEMPT_ADD <- disables preempt
TASK_NOT_RUNNING
UNITS 1 v unit_byte
LOCK2 &packet->qp->r_lock
LOCK2 &qp->s_lock
LOCK2 flags
LOCK2 flags
LOCK2 rcu_read
TYPE_LOCK (struct rvt_qp)->r_lock
TYPE_LOCK (struct rvt_qp)->s_lock

drivers/accel/amdxdna/amdxdna_ubuf.c amdxdna_get_ubuf() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 0-4503599627370495
UNITS 0 i unit_page

drivers/scsi/megaraid/megaraid_sas_fusion.c megasas_get_msix_index() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 1
PARAM_VALUE 1 v 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/scsi/megaraid/megaraid_sas_fusion.c megasas_get_msix_index() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 1
PARAM_VALUE 1 v 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

drivers/infiniband/hw/usnic/usnic_uiom.c usnic_uiom_get_pages() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 0-4503599627370495
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 i 1-4503599627370495[c]
UNITS 0 i unit_page
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

kernel/cgroup/misc.c misc_cg_try_charge() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 0 i 1
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $2
HALF_LOCKED2 &kvm->lock
HALF_LOCKED2 &kvm->slots_lock

drivers/gpu/drm/msm/msm_gem.c update_ctx_mem() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $1
NOSPEC 0 i
NOSPEC 0 i
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 i 0-s64max[c]
UNITS 0 i unit_byte
HALF_LOCKED2 &dev->object_name_lock

drivers/gpu/drm/msm/msm_gem.c update_device_mem() -> atomic64_add_return()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 i 4096-s64max[c]
UNITS 0 i unit_byte