Defined in 2 files as a prototype:
Defined in 2 files as a function:
Referenced in 38 files:
- arch/arm64/kernel/efi.c, line 181
- arch/x86/kvm/svm/svm.c, line 516
- arch/x86/kvm/vmx/vmx.c, line 2965
- crypto/testmgr.c, line 1185
- drivers/gpu/drm/clients/drm_log.c, line 393
- drivers/scsi/storvsc_drv.c, line 1899
- drivers/vhost/net.c, line 579
- drivers/virt/coco/arm-cca-guest/arm-cca-guest.c, line 92
- fs/erofs/zutil.c, line 41
- include/linux/bpf.h
- include/linux/filter.h
- include/linux/highmem-internal.h
- include/linux/io-mapping.h
- include/linux/local_lock_internal.h
- include/linux/rcupdate.h, line 990
- include/linux/sched.h, line 2537
- kernel/bpf/bpf_iter.c, line 687
- kernel/bpf/helpers.c
- kernel/bpf/syscall.c, line 896
- kernel/bpf/trampoline.c
- kernel/bpf/verifier.c, line 19366
- kernel/locking/spinlock_rt.c
- kernel/rcu/refscale.c
- kernel/rcu/srcutree.c, line 1752
- kernel/sched/core.c, line 2484
- kernel/softirq.c, line 194
- kernel/trace/bpf_trace.c
- kernel/trace/ring_buffer.c
- kernel/trace/trace.c, line 6252
- kernel/trace/trace_osnoise.c
- lib/locking-selftest.c, line 722
- lib/test_bpf.c, line 15088
- mm/highmem.c, line 560
- mm/kasan/kasan_test_c.c
- mm/memcontrol.c, line 2334
- mm/page_alloc.c, line 114
- net/bpf/test_run.c, line 757
- net/core/dev.c, line 6054
Smatch caller information:
kernel/rcu/refscale.c ref_preempt_delay_section() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/rcu/refscale.c ref_preempt_section() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
mm/memcontrol.c drain_all_stock() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &percpu_charge_mutex | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | global &cgroup_mutex |
net/kcm/kcmsock.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
net/netfilter/xt_bpf.c bpf_prog_run_save_cb() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &table->lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
net/packet/af_packet.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/core/bpf_sk_storage.c rcu_read_lock_dont_migrate() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/bpf/bpf_iter.c bpf_iter_run_prog() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | &seq->lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
kernel/bpf/bpf_iter.c rcu_read_lock_dont_migrate() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | &seq->lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
net/core/sock_reuseport.c bpf_prog_run_save_cb() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &head->lock |
net/core/skmsg.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/core/filter.c bpf_prog_run_save_cb() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &conn->lock |
fs/erofs/zutil.c z_erofs_get_gbuf() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/bpf/syscall.c bpf_disable_instrumentation() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/bpf/syscall.c bpf_map_free() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
lib/test_bpf.c __run_one() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace_osnoise.c osnoise_main() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace_osnoise.c timerlat_fd_open() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &interface_lock |
kernel/trace/trace_osnoise.c timerlat_fd_read() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace_osnoise.c timerlat_fd_release() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/trace_osnoise.c timerlat_main() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
drivers/gpu/drm/clients/drm_log.c drm_log_lock() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &dlog->lock | ||
| HALF_LOCKED2 | global &console_mutex | ||
| TYPE_LOCK | (struct drm_log)->lock |
drivers/vhost/net.c vhost_net_busy_poll() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &vq->mutex | ||
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
crypto/testmgr.c crypto_disable_simd_for_test() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &once_lock |
drivers/scsi/storvsc_drv.c storvsc_queuecommand() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &sdev->state_mutex |
net/ipv6/inet6_hashtables.c bpf_sk_lookup_run_v6() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/bpf/test_run.c __bpf_prog_test_run_raw_tp() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
net/bpf/test_run.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
net/bpf/test_run.c bpf_prog_test_run_sk_lookup() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
net/bpf/test_run.c rcu_read_lock_dont_migrate() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
net/netfilter/nf_bpf_link.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |
net/core/lwt_bpf.c bpf_prog_run_save_cb() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | bh | ||
| LOCK2 | rcu_read |
kernel/bpf/cgroup.c rcu_read_lock_dont_migrate() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | sk |
kernel/rcu/srcutree.c srcu_expedite_current() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |
kernel/time/timer_migration.c class_migrate_constructor() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | _T->lock | ||
| HALF_LOCKED2 | global &cpuhp_state_mutex | ||
| HALF_LOCKED2 | irq |
net/ipv4/inet_hashtables.c bpf_sk_lookup_run_v4() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
arch/x86/kvm/svm/svm.c kvm_is_svm_supported() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace.c trace_user_fault_read() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/bpf/bpf_inode_storage.c rcu_read_lock_dont_migrate() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/trace_uprobe.c bpf_prog_run_array_uprobe() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &ucb->mutex |
net/core/flow_dissector.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
drivers/net/tun.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
drivers/media/rc/bpf-lirc.c bpf_prog_run_array() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | global &ir_raw_handler_lock | ||
| LOCK2 | rcu_read |
kernel/trace/ring_buffer.c ring_buffer_resize() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &buffer->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct trace_buffer)->mutex |
kernel/trace/ring_buffer.c ring_buffer_resize() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &buffer->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct trace_buffer)->mutex |
net/ipv6/seg6_local.c bpf_prog_run_save_cb() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | bh |
kernel/bpf/trampoline.c __bpf_prog_enter_sleepable() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/bpf/trampoline.c __bpf_prog_enter_sleepable_recur() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/bpf/trampoline.c rcu_read_lock_dont_migrate() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
io_uring/bpf_filter.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | &ctx->uring_lock | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &sqd->lock | ||
| TYPE_LOCK | (struct io_ring_ctx)->uring_lock |
kernel/trace/bpf_trace.c __bpf_trace_run() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/bpf_trace.c bpf_prog_run_array() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | rcu_read |
kernel/trace/bpf_trace.c bpf_prog_run_array_sleepable() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/bpf_trace.c rcu_read_lock_dont_migrate() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/trace/bpf_trace.c uprobe_prog_run() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |
net/core/dev.c __netif_receive_skb_core() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | bh |
arch/x86/kvm/vmx/vmx.c kvm_is_vmx_supported() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
kernel/bpf/hashtab.c bpf_disable_instrumentation() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |
kernel/bpf/helpers.c bpf_task_work_callback() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu |
kernel/bpf/helpers.c bpf_wq_work() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
kernel/seccomp.c bpf_prog_run_pin_on_cpu() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/trace/rv/monitors/wip/wip.c class_migrate_constructor() -> migrate_disable()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |