Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 5 files:

Smatch caller information:

arch/x86/kernel/kprobes/core.c arch_arm_kprobe() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock

arch/x86/kernel/kprobes/core.c arch_disarm_kprobe() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock

arch/x86/kernel/alternative.c smp_text_poke_batch_finish() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &text_mutex

arch/x86/kernel/alternative.c smp_text_poke_batch_finish() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &text_mutex

arch/x86/kernel/alternative.c smp_text_poke_batch_finish() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &text_mutex

arch/x86/kernel/uprobes.c int3_update_optimize() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

arch/x86/kernel/uprobes.c int3_update_optimize() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

arch/x86/kernel/uprobes.c int3_update_optimize() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

arch/x86/kernel/uprobes.c int3_update_optimize() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

arch/x86/kernel/uprobes.c int3_update_unoptimize() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &uprobe->register_rwsem
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct uprobe)->register_rwsem

arch/x86/kernel/uprobes.c int3_update_unoptimize() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &uprobe->register_rwsem
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct uprobe)->register_rwsem

arch/x86/kernel/uprobes.c int3_update_unoptimize() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &uprobe->register_rwsem
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct uprobe)->register_rwsem

arch/x86/kernel/kprobes/opt.c arch_unoptimize_kprobe() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock

arch/x86/kernel/kprobes/opt.c arch_unoptimize_kprobe() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock

arch/x86/kernel/module.c write_relocate_add() -> smp_text_poke_sync_each_cpu()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 global &text_mutex