Defined in 2 files as a function:
- include/linux/rcupdate_trace.h, line 21 (as a function)
- include/linux/rcupdate_trace.h, line 28 (as a function)
Referenced in 7 files:
- include/linux/bpf.h
- include/linux/bpf_local_storage.h, line 159
- kernel/events/uprobes.c
- kernel/rcu/rcutorture.c, line 1260
- kernel/trace/bpf_trace.c, line 181
- kernel/trace/trace_uprobe.c, line 1408
- net/core/netclassid_cgroup.c, line 26
Smatch caller information:
kernel/bpf/bpf_local_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| HALF_LOCKED2 | flags |
kernel/bpf/bpf_local_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| HALF_LOCKED2 | flags |
kernel/bpf/bpf_local_storage.c bpf_local_storage_update() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_local_storage.c bpf_selem_link_storage_nolock() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | b_flags | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
kernel/bpf/bpf_local_storage.c bpf_selem_unlink() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_local_storage.c bpf_selem_unlink_map() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| LOCK2 | flags |
kernel/bpf/bpf_local_storage.c bpf_selem_unlink_map() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| LOCK2 | flags |
kernel/bpf/bpf_local_storage.c bpf_selem_unlink_nofail() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read |
kernel/bpf/bpf_local_storage.c bpf_selem_unlink_nofail() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read |
kernel/bpf/bpf_local_storage.c bpf_selem_unlink_storage_nolock() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| LOCK2 | flags | ||
| HALF_LOCKED2 | b_flags |
kernel/bpf/bpf_cgrp_storage.c ____bpf_cgrp_storage_delete() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_cgrp_storage.c ____bpf_cgrp_storage_get() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_cgrp_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_cgrp_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_cgrp_storage.c cgroup_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
net/core/bpf_sk_storage.c ____bpf_sk_storage_delete() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
net/core/bpf_sk_storage.c ____bpf_sk_storage_delete_tracing() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
net/core/bpf_sk_storage.c ____bpf_sk_storage_get() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
net/core/bpf_sk_storage.c ____bpf_sk_storage_get_tracing() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
net/core/bpf_sk_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | rcu_read |
net/core/bpf_sk_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | rcu_read |
net/core/bpf_sk_storage.c bpf_sk_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
net/core/netclassid_cgroup.c task_cls_state() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
kernel/bpf/bpf_inode_storage.c ____bpf_inode_storage_delete() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_inode_storage.c ____bpf_inode_storage_get() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_inode_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_inode_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_inode_storage.c inode_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/trace/trace_uprobe.c __uprobe_perf_func() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &ucb->mutex |
kernel/trace/trace_uprobe.c bpf_prog_run_array_uprobe() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &ucb->mutex |
kernel/bpf/lpm_trie.c trie_lookup_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | rcu_read |
kernel/bpf/lpm_trie.c trie_lookup_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | rcu_read |
kernel/events/uprobes.c find_uprobe_rcu() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | rcu_read |
kernel/events/uprobes.c handle_uretprobe_chain() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
kernel/events/uprobes.c handler_chain() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
kernel/events/uprobes.c uprobe_apply() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &uprobe->register_rwsem | ||
| LOCK2 | global &event_mutex | ||
| HALF_LOCKED2 | &p_event->group_leader->ctx->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct uprobe)->register_rwsem |
kernel/trace/bpf_trace.c trace_call_bpf_faultable() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_struct_ops.c bpf_prog_get_assoc_struct_ops() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/hashtab.c __htab_lru_percpu_map_update_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | rcu_read |
kernel/bpf/hashtab.c __htab_map_lookup_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | rcu_read |
kernel/bpf/hashtab.c htab_lru_map_delete_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | rcu_read |
kernel/bpf/hashtab.c htab_lru_map_update_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/hashtab.c htab_map_delete_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | rcu_read |
kernel/bpf/hashtab.c htab_map_update_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | rcu_read |
kernel/bpf/hashtab.c htab_map_update_elem_in_place() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| HALF_LOCKED2 | rcu_read |
kernel/bpf/helpers.c ____bpf_map_delete_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/helpers.c ____bpf_map_lookup_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/helpers.c ____bpf_map_lookup_percpu_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/helpers.c ____bpf_map_update_elem() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_task_storage.c ____bpf_task_storage_delete() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_task_storage.c ____bpf_task_storage_get() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_task_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_task_storage.c bpf_local_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/bpf/bpf_task_storage.c task_storage_lookup() -> rcu_read_lock_trace_held()
| Type | Parameter | Key | Value |
|---|
kernel/rcu/rcutorture.c rcu_torture_one_read_start() -> (struct rcu_torture_ops)->readlock_held()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |