/linux-6.3-rc2/tools/testing/selftests/kvm/x86_64/ |
A D | hyperv_features.c | 85 GUEST_ASSERT(hcall->control); in guest_hcall() 98 if (hcall->ud_expected) { in guest_hcall() 102 GUEST_ASSERT_2(res == hcall->expect, hcall->expect, res); in guest_hcall() 526 struct hcall_data *hcall; in guest_test_hcalls_access() local 558 hcall->control = 0xbeef; in guest_test_hcalls_access() 604 hcall->expect = HV_STATUS_SUCCESS; in guest_test_hcalls_access() 613 hcall->expect = HV_STATUS_SUCCESS; in guest_test_hcalls_access() 617 hcall->control = HVCALL_SEND_IPI; in guest_test_hcalls_access() 622 hcall->control = HVCALL_SEND_IPI; in guest_test_hcalls_access() 643 hcall->ud_expected = true; in guest_test_hcalls_access() [all …]
|
A D | xen_vmcall_test.c | 112 ASSERT_EQ(run->xen.u.hcall.cpl, 0); in main() 113 ASSERT_EQ(run->xen.u.hcall.longmode, 1); in main() 114 ASSERT_EQ(run->xen.u.hcall.input, INPUTVALUE); in main() 115 ASSERT_EQ(run->xen.u.hcall.params[0], ARGVALUE(1)); in main() 116 ASSERT_EQ(run->xen.u.hcall.params[1], ARGVALUE(2)); in main() 117 ASSERT_EQ(run->xen.u.hcall.params[2], ARGVALUE(3)); in main() 118 ASSERT_EQ(run->xen.u.hcall.params[3], ARGVALUE(4)); in main() 119 ASSERT_EQ(run->xen.u.hcall.params[4], ARGVALUE(5)); in main() 120 ASSERT_EQ(run->xen.u.hcall.params[5], ARGVALUE(6)); in main() 121 run->xen.u.hcall.result = RETVALUE; in main()
|
A D | hyperv_extended_hypercalls.c | 75 outval = addr_gpa2hva(vm, run->hyperv.u.hcall.params[1]); in main() 77 run->hyperv.u.hcall.result = HV_STATUS_SUCCESS; in main()
|
/linux-6.3-rc2/Documentation/ABI/testing/ |
A D | debugfs-pfo-nx-crypto | 15 only errors counted here are those returned from the hcall, H_COP_OP. 18 The most recent non-zero return code from the H_COP_OP hcall. -EBUSY is not 19 recorded here (the hcall will retry until -EBUSY goes away). 23 hcall.
|
A D | sysfs-bus-papr-pmem | 9 response to H_SCM_HEALTH hcall. The details of the bit 10 flags returned in response to this hcall is available
|
/linux-6.3-rc2/Documentation/powerpc/ |
A D | papr_hcalls.rst | 28 Hence a Hypercall (hcall) is essentially a request by the pseries guest 36 The ABI specification for a hcall between a pseries guest and PAPR hypervisor 39 and any in-arguments for the hcall are provided in registers *r4-r12*. If values 44 'HVCS' instruction the return value of the hcall is available in *r3* and any 69 | r3 | Y | hcall opcode/return value | 123 success or failure of the hcall. In case of a failure an error code indicates 127 In some cases a hcall can potentially take a long time and need to be issued 131 servicing the hcall yet. 135 for each subsequent hcall until hypervisor returns a non *H_CONTINUE* 286 The hcall returns H_BUSY when the flush takes longer time and the hcall needs [all …]
|
/linux-6.3-rc2/arch/powerpc/kvm/ |
A D | book3s_pr_papr.c | 489 unsigned int hcall; in kvmppc_pr_init_default_hcalls() local 492 hcall = default_hcall_list[i]; in kvmppc_pr_init_default_hcalls() 493 WARN_ON(!kvmppc_hcall_impl_pr(hcall)); in kvmppc_pr_init_default_hcalls() 494 __set_bit(hcall / 4, kvm->arch.enabled_hcalls); in kvmppc_pr_init_default_hcalls()
|
A D | powerpc.c | 2122 pvinfo->hcall[0] = cpu_to_be32(inst_sc1); in kvm_vm_ioctl_get_pvinfo() 2123 pvinfo->hcall[1] = cpu_to_be32(inst_nop); in kvm_vm_ioctl_get_pvinfo() 2124 pvinfo->hcall[2] = cpu_to_be32(inst_nop); in kvm_vm_ioctl_get_pvinfo() 2125 pvinfo->hcall[3] = cpu_to_be32(inst_nop); in kvm_vm_ioctl_get_pvinfo() 2143 pvinfo->hcall[2] = cpu_to_be32(inst_sc); in kvm_vm_ioctl_get_pvinfo() 2144 pvinfo->hcall[3] = cpu_to_be32(inst_nop); in kvm_vm_ioctl_get_pvinfo() 2191 unsigned long hcall = cap->args[0]; in kvm_vm_ioctl_enable_cap() local 2194 if (hcall > MAX_HCALL_OPCODE || (hcall & 3) || in kvm_vm_ioctl_enable_cap() 2197 if (!kvmppc_book3s_hcall_implemented(kvm, hcall)) in kvm_vm_ioctl_enable_cap() 2200 set_bit(hcall / 4, kvm->arch.enabled_hcalls); in kvm_vm_ioctl_enable_cap() [all …]
|
A D | book3s.c | 1002 int kvmppc_book3s_hcall_implemented(struct kvm *kvm, unsigned long hcall) in kvmppc_book3s_hcall_implemented() argument 1004 return kvm->arch.kvm_ops->hcall_implemented(hcall); in kvmppc_book3s_hcall_implemented()
|
A D | book3s_xics.c | 848 int kvmppc_xics_rm_complete(struct kvm_vcpu *vcpu, u32 hcall) in kvmppc_xics_rm_complete() argument 854 hcall, icp->rm_action, icp->rm_dbgstate.raw, icp->rm_dbgtgt); in kvmppc_xics_rm_complete()
|
A D | book3s_hv.c | 2741 {"hypercall", offsetof(struct kvm_vcpu, arch.hcall)}, 4849 accumulate_time(vcpu, &vcpu->arch.hcall); in kvmppc_vcpu_run_hv() 5885 unsigned int hcall; in init_default_hcalls() local 5888 hcall = default_hcall_list[i]; in init_default_hcalls() 5889 WARN_ON(!kvmppc_hcall_impl_hv(hcall)); in init_default_hcalls() 5890 __set_bit(hcall / 4, default_enabled_hcalls); in init_default_hcalls()
|
/linux-6.3-rc2/arch/x86/kvm/ |
A D | xen.c | 1156 return kvm_xen_hypercall_set_result(vcpu, run->xen.u.hcall.result); in kvm_xen_hypercall_complete_userspace() 1515 vcpu->run->xen.u.hcall.longmode = longmode; in kvm_xen_hypercall() 1516 vcpu->run->xen.u.hcall.cpl = cpl; in kvm_xen_hypercall() 1517 vcpu->run->xen.u.hcall.input = input; in kvm_xen_hypercall() 1518 vcpu->run->xen.u.hcall.params[0] = params[0]; in kvm_xen_hypercall() 1519 vcpu->run->xen.u.hcall.params[1] = params[1]; in kvm_xen_hypercall() 1520 vcpu->run->xen.u.hcall.params[2] = params[2]; in kvm_xen_hypercall() 1521 vcpu->run->xen.u.hcall.params[3] = params[3]; in kvm_xen_hypercall() 1522 vcpu->run->xen.u.hcall.params[4] = params[4]; in kvm_xen_hypercall() 1523 vcpu->run->xen.u.hcall.params[5] = params[5]; in kvm_xen_hypercall()
|
A D | hyperv.c | 2350 return kvm_hv_hypercall_complete(vcpu, vcpu->run->hyperv.u.hcall.result); in kvm_hv_hypercall_complete_userspace() 2631 vcpu->run->hyperv.u.hcall.input = hc.param; in kvm_hv_hypercall() 2632 vcpu->run->hyperv.u.hcall.params[0] = hc.ingpa; in kvm_hv_hypercall() 2633 vcpu->run->hyperv.u.hcall.params[1] = hc.outgpa; in kvm_hv_hypercall()
|
/linux-6.3-rc2/arch/powerpc/platforms/pseries/ |
A D | vas.c | 147 int h_query_vas_capabilities(const u64 hcall, u8 query_type, u64 result) in h_query_vas_capabilities() argument 151 rc = plpar_hcall_norets(hcall, query_type, result); in h_query_vas_capabilities() 159 (hcall == H_QUERY_VAS_CAPABILITIES) ? in h_query_vas_capabilities()
|
A D | Kconfig | 135 this enables code that uses the hcall GetPerfCounterInfo and 24x7
|
/linux-6.3-rc2/arch/powerpc/include/asm/ |
A D | vas.h | 271 int h_query_vas_capabilities(const u64 hcall, u8 query_type, u64 result);
|
A D | kvm_ppc.h | 291 int (*hcall_implemented)(unsigned long hcall); 611 extern int kvmppc_xics_rm_complete(struct kvm_vcpu *vcpu, u32 hcall); 640 static inline int kvmppc_xics_rm_complete(struct kvm_vcpu *vcpu, u32 hcall) in kvmppc_xics_rm_complete() argument
|
A D | kvm_host.h | 841 struct kvmhv_tb_accumulator hcall; member
|
/linux-6.3-rc2/include/uapi/linux/ |
A D | kvm.h | 199 } hcall; member 222 } hcall; member 855 __u32 hcall[4]; member
|
/linux-6.3-rc2/tools/include/uapi/linux/ |
A D | kvm.h | 199 } hcall; member 222 } hcall; member 855 __u32 hcall[4]; member
|
/linux-6.3-rc2/Documentation/virt/kvm/ |
A D | ppc-pv.rst | 207 generic hypercalls are implemented here, like the ePAPR idle hcall. These are
|
A D | api.rst | 1784 __u32 hcall[4]; 1791 The hcall array defines 4 instructions that make up a hypercall. 1798 /* the host supports the ePAPR idle hcall 2109 When the guest issues an H_PUT_TCE hcall on a liobn for which a TCE 6483 } hcall; 6604 } hcall; 6977 :Parameters: args[0] is the sPAPR hcall number; 6982 handling of an hcall is effective across the VM. On creation, an 6991 If the hcall number specified is not one that has an in-kernel 7469 H_RPT_INVALIDATE hcall. [all …]
|
/linux-6.3-rc2/Documentation/admin-guide/ |
A D | kernel-parameters.txt | 4597 Disable RADIX GTSE feature and use hcall for TLB
|