Documented in 1 files:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

mm/rmap.c atomic_add_negative() -> raw_atomic_add_negative()

Type Parameter Key Value
PARAM_VALUE 0 i (-1)
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 ptl

mm/kasan/kasan_test_c.c atomic_add_negative() -> raw_atomic_add_negative()

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

drivers/infiniband/core/cm.c atomic_add_negative() -> raw_atomic_add_negative()

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
HALF_LOCKED2 &pool->lock

drivers/accel/habanalabs/common/hw_queue.c atomic_add_negative() -> raw_atomic_add_negative()

Type Parameter Key Value
PARAM_VALUE 0 i (-65535)-(-1)
PARAM_VALUE 1 v 4096-ptr_max
BUF_SIZE 1 v 4
DATA_SOURCE 0 i $0
DATA_SOURCE 1 v $1
PREEMPT_ADD
RX_PATH
LOCK2 &hdev->asic_specific->hw_queues_lock