Defined in 2 files as a prototype:

Defined in 2 files as a function:

Referenced in 38 files:

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