Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/ubifs/tnc_misc.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 1592116691373998080
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &c->umount_mutex

mm/huge_memory.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 ptl

io_uring/rsrc.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i s64min-(-1),1-s64max
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock

io_uring/memmap.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 1-4294967295
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 i
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 _T->lock

mm/slub.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i unit_array_size
HALF_LOCKED2 &n->list_lock
HALF_LOCKED2 flags

mm/swapfile.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 2426144052676947968
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i unit_page
HALF_LOCKED2 &p->lock
HALF_LOCKED2 global &swap_lock

net/core/skbuff.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 i 0-4294967295[c]
UNITS 0 i unit_page
HALF_LOCKED2 &rm->m_rs_lock
HALF_LOCKED2 flags

drivers/iommu/iommufd/pages.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
CAPPED_DATA 0 i 1
CAPPED_DATA 0 i 1
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i unit_page
HALF_LOCKED2 &ictx->ioas_creation_lock
HALF_LOCKED2 &pages->mutex

mm/rmap.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 0-4294967295
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &resv_map->rw_sema
HALF_LOCKED2 &vma->vm_private_data->rw_sema

mm/hugetlb.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 0-4294967295
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/cachefiles/io.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &epdata->dev->lock

mm/kasan/kasan_test_c.c atomic_long_sub() -> raw_atomic_long_sub()

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

security/integrity/ima/ima_queue.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4944777132338331648
BUF_SIZE 1 v 24
BUF_SIZE 1 v 24
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
NOCHECK_CALL
LOCK2 global &ima_extend_list_mutex

mm/page_counter.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 i s64min-s64max

mm/memory.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

drivers/gpu/drm/ttm/ttm_pool.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i s32min-s32max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

lib/genalloc.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
PARAM_VALUE 1 v->counter s64min-(-1),1-s64max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i unit_byte
LOCK2 rcu_read
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &ipc->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &cpm_muram_lock

kernel/events/core.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i unit_page
HALF_LOCKED2 &rb->aux_mutex
HALF_LOCKED2 _T->lock

mm/memory-failure.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 6582150584639197184
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &attr->mutex

net/ipv4/inet_fragment.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 i
UNITS 0 i unit_byte
HALF_LOCKED2 rcu_read

fs/smb/client/cached_dir.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i s64min-(-1),1-s64max
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &cfid->cfids->cfid_list_lock
HALF_LOCKED2 &cfid->dentry->d_lockref.lock

arch/x86/coco/tdx/tdx.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 9167653038521565184
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 i 1-64[c]
USER_DATA 0 i 1-2621442[c]
LOCK2 global &mem_enc_lock

kernel/dma/swiotlb.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i unit_array_size

drivers/base/memory.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 1
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &attr->mutex

io_uring/notif.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 1-4294967295
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

mm/vmalloc.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 7610197702772047872
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &vmap_purge_lock

mm/debug_vm_pgtable.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
NOCHECK_CALL

drivers/gpu/drm/ttm/ttm_tt.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 2485617248563195904,3438847894657478656
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
NOSPEC 0 i
NOSPEC 0 i
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 i 0-4294967295[c]
NO_OVERFLOW_SIMPLE 0 i

fs/ubifs/shrinker.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &c->tnc_mutex
LOCK2 &c->umount_mutex
HALF_LOCKED2 global &bch_register_lock
TYPE_LOCK (struct ubifs_info)->tnc_mutex
TYPE_LOCK (struct ubifs_info)->umount_mutex

mm/zsmalloc.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &class->lock

mm/khugepaged.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mapping->i_mmap_rwsem
HALF_LOCKED2 &mm->mmap_lock

arch/x86/mm/pgtable.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i 4096
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/md/bcache/super.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 0 i s32min-s32max
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &bch_register_lock
HALF_LOCKED2 &b->io_mutex
HALF_LOCKED2 &dc->in_flight

kernel/bpf/core.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 7970477535896326144
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i unit_byte

net/xdp/xdp_umem.c atomic_long_sub() -> raw_atomic_long_sub()

Type Parameter Key Value
PARAM_VALUE 1 v 4096-ptr_max
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 i 0-1048576[c]
UNITS 0 i unit_array_size
HALF_LOCKED2 &xs->mutex