Defined in 1 files as a prototype:
Defined in 18 files as a macro:
- arch/arc/include/asm/atomic-spinlock.h, line 101 (as a macro)
- arch/arm/include/asm/atomic.h, line 205 (as a macro)
- arch/arm64/include/asm/atomic.h, line 128 (as a macro)
- arch/hexagon/include/asm/atomic.h, line 100 (as a macro)
- arch/loongarch/include/asm/atomic-amo.h, line 91 (as a macro)
- arch/m68k/include/asm/atomic.h, line 123 (as a macro)
- arch/openrisc/include/asm/atomic.h, line 92 (as a macro)
- arch/parisc/include/asm/atomic.h, line 135 (as a macro)
- arch/riscv/include/asm/atomic.h, line 180 (as a macro)
- arch/s390/include/asm/atomic.h, line 101 (as a macro)
- arch/sh/include/asm/atomic-grb.h, line 86 (as a macro)
- arch/sh/include/asm/atomic-irq.h, line 72 (as a macro)
- arch/sh/include/asm/atomic-llsc.h, line 88 (as a macro)
- arch/sparc/include/asm/atomic_32.h, line 28 (as a macro)
- arch/sparc/include/asm/atomic_64.h, line 57 (as a macro)
- arch/x86/include/asm/atomic.h, line 133 (as a macro)
- arch/xtensa/include/asm/atomic.h, line 260 (as a macro)
- include/asm-generic/atomic.h, line 120 (as a macro)
Defined in 1 files as a function:
Referenced in 3 files:
- arch/loongarch/include/asm/atomic-amo.h
- arch/sparc/include/asm/atomic_32.h, line 54
- include/linux/atomic/atomic-arch-fallback.h
Smatch caller information:
lib/atomic64_test.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-559038737),559038736 |
| PARAM_VALUE | 1 | v | 244908970501345280 |
| PARAM_VALUE | 1 | v->counter | (-1432153289) |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| HARD_MAX | 0 | i | 559038736 |
lib/atomic64_test.c raw_atomic_fetch_and_acquire() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-559038737),559038736 |
| PARAM_VALUE | 1 | v | 244908970501345280 |
| PARAM_VALUE | 1 | v->counter | (-1432153289) |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| HARD_MAX | 0 | i | 559038736 |
lib/atomic64_test.c raw_atomic_fetch_and_relaxed() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-559038737),559038736 |
| PARAM_VALUE | 1 | v | 244908970501345280 |
| PARAM_VALUE | 1 | v->counter | (-1432153289) |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| HARD_MAX | 0 | i | 559038736 |
lib/atomic64_test.c raw_atomic_fetch_and_release() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-559038737),559038736 |
| PARAM_VALUE | 1 | v | 244908970501345280 |
| PARAM_VALUE | 1 | v->counter | (-1432153289) |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| HARD_MAX | 0 | i | 559038736 |
drivers/spi/spi-rockchip.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| 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 | |||
| HALF_LOCKED2 | &bdma_chan->lock | ||
| HALF_LOCKED2 | &ioat_chan->cleanup_lock | ||
| HALF_LOCKED2 | &mv_chan->lock | ||
| HALF_LOCKED2 | &pd_chan->lock | ||
| HALF_LOCKED2 | &plxdev->ring_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &swdma_chan->complete_lock | ||
| HALF_LOCKED2 | &td_chan->lock | ||
| HALF_LOCKED2 | bh |
drivers/pci/hotplug/pciehp_hpc.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-131073) |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | _T->lock |
drivers/spi/spi-uniphier.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| 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 | |||
| HALF_LOCKED2 | &bdma_chan->lock | ||
| HALF_LOCKED2 | &ioat_chan->cleanup_lock | ||
| HALF_LOCKED2 | &mv_chan->lock | ||
| HALF_LOCKED2 | &pd_chan->lock | ||
| HALF_LOCKED2 | &plxdev->ring_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &swdma_chan->complete_lock | ||
| HALF_LOCKED2 | &td_chan->lock | ||
| HALF_LOCKED2 | bh |
kernel/sched/fair.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-5) |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| PREEMPT_ADD |
drivers/net/xen-netback/netback.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-7) |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/net/xen-netback/rx.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-6) |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |
| RX_PATH |
kernel/sched/core.c raw_atomic_fetch_and() -> arch_atomic_fetch_and()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | (-16) |
| PARAM_VALUE | 1 | v | 4096-ptr_max |
| DATA_SOURCE | 0 | i | $0 |
| DATA_SOURCE | 1 | v | $1 |