Defined in 5 files as a macro:
- arch/alpha/include/asm/local.h, line 17 (as a macro)
- arch/loongarch/include/asm/local.h, line 26 (as a macro)
- arch/mips/include/asm/local.h, line 25 (as a macro)
- arch/powerpc/include/asm/local.h, line 75 (as a macro)
- include/asm-generic/local.h, line 32 (as a macro)
Defined in 1 files as a function:
Referenced in 10 files:
- arch/x86/include/asm/local.h, line 178
- include/asm-generic/local64.h, line 33
- include/linux/cookie.h, line 47
- include/linux/part_stat.h, line 74
- kernel/bpf/memalloc.c
- kernel/events/core.c
- kernel/trace/ring_buffer.c
- kernel/trace/trace_functions.c
- kernel/trace/trace_irqsoff.c
- kernel/trace/trace_sched_wakeup.c
Smatch caller information:
net/core/sock_diag.c gen_cookie_next() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &seq->lock | ||
| HALF_LOCKED2 | rcu_read |
kernel/trace/trace_irqsoff.c func_prolog_dec() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace_irqsoff.c irqsoff_graph_entry() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| NOCHECK_CALL |
kernel/trace/trace_irqsoff.c irqsoff_graph_return() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| NOCHECK_CALL |
kernel/trace/trace_irqsoff.c irqsoff_tracer_call() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| NOCHECK_CALL |
kernel/trace/trace_irqsoff.c start_critical_timing() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/trace_irqsoff.c stop_critical_timing() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/pidfs.c gen_cookie_next() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
block/blk-mq.c bdev_dec_in_flight() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
block/blk-mq.c bdev_dec_in_flight() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/trace_functions.c function_stack_no_repeats_trace_call() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | flags |
kernel/trace/trace_functions.c function_stack_trace_call() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | flags |
kernel/bpf/syscall.c gen_cookie_next() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| NOCHECK_CALL |
kernel/bpf/memalloc.c dec_active() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| NOCHECK_CALL |
kernel/bpf/memalloc.c unit_alloc() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| NOCHECK_CALL | |||
| LOCK2 | flags |
kernel/bpf/memalloc.c unit_free() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| NOCHECK_CALL | |||
| LOCK2 | flags |
kernel/bpf/memalloc.c unit_free_rcu() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | flags |
block/blk-core.c bdev_dec_in_flight() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &bdev->bd_queue->queue_lock |
block/blk-core.c bdev_dec_in_flight() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &bdev->bd_queue->queue_lock |
block/blk-merge.c bdev_dec_in_flight() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &bfqd->lock | ||
| HALF_LOCKED2 | &dd->lock | ||
| HALF_LOCKED2 | irq |
block/blk-merge.c bdev_dec_in_flight() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &bfqd->lock | ||
| HALF_LOCKED2 | &dd->lock | ||
| HALF_LOCKED2 | irq |
kernel/events/core.c list_del_event() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &cpuctx->ctx.lock | ||
| HALF_LOCKED2 | &ctx->lock | ||
| HALF_LOCKED2 | &event->child_mutex | ||
| HALF_LOCKED2 | irq | ||
| TYPE_LOCK | (struct perf_event_context)->lock |
kernel/events/core.c perf_pending_task() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| NOCHECK_CALL |
kernel/trace/ring_buffer.c rb_decrement_entry() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/ring_buffer.c rb_decrement_entry() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/ring_buffer.c rb_end_commit() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/ring_buffer.c rb_reserve_next_event() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/ring_buffer.c rb_reserve_next_event() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/trace_sched_wakeup.c func_prolog_preempt_disable() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL |
kernel/trace/trace_sched_wakeup.c probe_wakeup() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace_sched_wakeup.c probe_wakeup_sched_switch() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace_sched_wakeup.c wakeup_graph_entry() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL |
kernel/trace/trace_sched_wakeup.c wakeup_graph_return() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL |
kernel/trace/trace_sched_wakeup.c wakeup_tracer_call() -> local_dec()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | l | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL |