Home
last modified time | relevance | path

Searched refs:pv_lock_ops (Results 1 – 8 of 8) sorted by relevance

/Linux-v4.19/arch/x86/kernel/
Dparavirt-spinlocks.c20 return pv_lock_ops.queued_spin_unlock.func == in pv_is_native_spin_unlock()
32 return pv_lock_ops.vcpu_is_preempted.func == in pv_is_native_vcpu_is_preempted()
36 struct pv_lock_ops pv_lock_ops = { variable
45 EXPORT_SYMBOL(pv_lock_ops);
Dparavirt_patch_32.c14 DEF_NATIVE(pv_lock_ops, queued_spin_unlock, "movb $0, (%eax)");
15 DEF_NATIVE(pv_lock_ops, vcpu_is_preempted, "xor %eax, %eax");
54 case PARAVIRT_PATCH(pv_lock_ops.queued_spin_unlock): in native_patch()
62 case PARAVIRT_PATCH(pv_lock_ops.vcpu_is_preempted): in native_patch()
Dparavirt_patch_64.c22 DEF_NATIVE(pv_lock_ops, queued_spin_unlock, "movb $0, (%rdi)");
23 DEF_NATIVE(pv_lock_ops, vcpu_is_preempted, "xor %eax, %eax");
64 case PARAVIRT_PATCH(pv_lock_ops.queued_spin_unlock): in native_patch()
72 case PARAVIRT_PATCH(pv_lock_ops.vcpu_is_preempted): in native_patch()
Dkvm.c853 pv_lock_ops.queued_spin_lock_slowpath = __pv_queued_spin_lock_slowpath; in kvm_spinlock_init()
854 pv_lock_ops.queued_spin_unlock = PV_CALLEE_SAVE(__pv_queued_spin_unlock); in kvm_spinlock_init()
855 pv_lock_ops.wait = kvm_wait; in kvm_spinlock_init()
856 pv_lock_ops.kick = kvm_kick_cpu; in kvm_spinlock_init()
859 pv_lock_ops.vcpu_is_preempted = in kvm_spinlock_init()
Dparavirt.c146 .pv_lock_ops = pv_lock_ops, in get_call_destination()
/Linux-v4.19/arch/x86/xen/
Dspinlock.c144 pv_lock_ops.queued_spin_lock_slowpath = __pv_queued_spin_lock_slowpath; in xen_init_spinlocks()
145 pv_lock_ops.queued_spin_unlock = PV_CALLEE_SAVE(__pv_queued_spin_unlock); in xen_init_spinlocks()
146 pv_lock_ops.wait = xen_qlock_wait; in xen_init_spinlocks()
147 pv_lock_ops.kick = xen_qlock_kick; in xen_init_spinlocks()
148 pv_lock_ops.vcpu_is_preempted = PV_CALLEE_SAVE(xen_vcpu_stolen); in xen_init_spinlocks()
/Linux-v4.19/arch/x86/include/asm/
Dparavirt_types.h310 struct pv_lock_ops { struct
329 struct pv_lock_ops pv_lock_ops; argument
338 extern struct pv_lock_ops pv_lock_ops;
Dparavirt.h679 PVOP_VCALL2(pv_lock_ops.queued_spin_lock_slowpath, lock, val); in pv_queued_spin_lock_slowpath()
684 PVOP_VCALLEE1(pv_lock_ops.queued_spin_unlock, lock); in pv_queued_spin_unlock()
689 PVOP_VCALL2(pv_lock_ops.wait, ptr, val); in pv_wait()
694 PVOP_VCALL1(pv_lock_ops.kick, cpu); in pv_kick()
699 return PVOP_CALLEE1(bool, pv_lock_ops.vcpu_is_preempted, cpu); in pv_vcpu_is_preempted()