Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

kernel/entry/common.c arch_exit_work() -> switch_fpu_return()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 irq

arch/x86/kernel/process.c arch_exit_work() -> switch_fpu_return()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 irq

arch/x86/kernel/cpu/mce/core.c arch_exit_work() -> switch_fpu_return()

Type Parameter Key Value
NOCHECK_CALL

arch/x86/kernel/traps.c arch_exit_work() -> switch_fpu_return()

Type Parameter Key Value
NOCHECK_CALL

arch/x86/coco/sev/vc-handle.c arch_exit_work() -> switch_fpu_return()

Type Parameter Key Value
NOCHECK_CALL

arch/x86/kvm/hyperv.c kvm_fpu_get() -> switch_fpu_return()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 bh

arch/x86/kvm/x86.c vcpu_enter_guest() -> switch_fpu_return()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &vcpu->mutex
LOCK2 irq
TYPE_LOCK (struct kvm_vcpu)->mutex

arch/x86/entry/syscall_32.c arch_exit_work() -> switch_fpu_return()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 irq

arch/x86/entry/syscall_64.c arch_exit_work() -> switch_fpu_return()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 irq

arch/x86/kvm/msrs.c kvm_fpu_get() -> switch_fpu_return()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 bh

arch/x86/kvm/emulate.c kvm_fpu_get() -> switch_fpu_return()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 bh