Home
last modified time | relevance | path

Searched refs:ucall (Results 1 - 25 of 88) sorted by relevance

1234

/kernel/linux/linux-6.6/tools/testing/selftests/kvm/include/
H A Ducall_common.h8 #include "ucall.h"
23 struct ucall { struct
29 struct ucall *hva;
36 void ucall(uint64_t cmd, int nargs, ...);
40 uint64_t get_ucall(struct kvm_vcpu *vcpu, struct ucall *uc);
46 * allocating a ucall struct, which can be useful if the atomic operations in
47 * the full ucall() are problematic and/or unwanted. Note, this will come out
53 ucall(UCALL_SYNC, 6, "hello", stage, arg1, arg2, arg3, arg4)
54 #define GUEST_SYNC(stage) ucall(UCALL_SYNC, 2, "hello", stage)
56 #define GUEST_DONE() ucall(UCALL_DON
[all...]
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/lib/s390x/
H A Ducall.c3 * ucall support. A ucall is a "hypercall to userspace".
17 void ucall(uint64_t cmd, int nargs, ...) in ucall() function
19 struct ucall uc = { in ucall()
36 uint64_t get_ucall(struct kvm_vm *vm, uint32_t vcpu_id, struct ucall *uc) in get_ucall()
39 struct ucall ucall = {}; in get_ucall() local
50 memcpy(&ucall, addr_gva2hva(vm, run->s.regs.gprs[reg]), in get_ucall()
51 sizeof(ucall)); in get_ucall()
55 memcpy(uc, &ucall, sizeo in get_ucall()
[all...]
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/lib/x86_64/
H A Ducall.c3 * ucall support. A ucall is a "hypercall to userspace".
19 void ucall(uint64_t cmd, int nargs, ...) in ucall() function
21 struct ucall uc = { in ucall()
38 uint64_t get_ucall(struct kvm_vm *vm, uint32_t vcpu_id, struct ucall *uc) in get_ucall()
41 struct ucall ucall = {}; in get_ucall() local
50 memcpy(&ucall, addr_gva2hva(vm, (vm_vaddr_t)regs.rdi), in get_ucall()
51 sizeof(ucall)); in get_ucall()
55 memcpy(uc, &ucall, sizeo in get_ucall()
[all...]
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/lib/
H A Ducall_common.c11 struct ucall ucalls[KVM_MAX_VCPUS];
28 struct ucall *uc; in ucall_init()
46 static struct ucall *ucall_alloc(void) in ucall_alloc()
48 struct ucall *uc; in ucall_alloc()
64 * If the vCPU cannot grab a ucall structure, make a bare ucall with a in ucall_alloc()
72 static void ucall_free(struct ucall *uc) in ucall_free()
81 struct ucall *uc; in ucall_assert()
102 struct ucall *uc; in ucall_fmt()
117 void ucall(uint64_ function
141 struct ucall ucall; get_ucall() local
[all...]
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/lib/aarch64/
H A Ducall.c3 * ucall support. A ucall is a "hypercall to userspace".
34 TEST_ASSERT(ret, "Can't set ucall mmio address to %lx", gpa); in ucall_init()
65 TEST_FAIL("Can't find a ucall mmio address"); in ucall_init()
74 void ucall(uint64_t cmd, int nargs, ...) in ucall() function
76 struct ucall uc = {}; in ucall()
91 uint64_t get_ucall(struct kvm_vm *vm, uint32_t vcpu_id, struct ucall *uc) in get_ucall()
94 struct ucall ucall = {}; in get_ucall() local
104 "Unexpected ucall exi in get_ucall()
[all...]
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/x86_64/
H A Dkvm_pv_test.c71 #define PR_MSR(msr) ucall(UCALL_PR_MSR, 1, msr)
109 #define PR_HCALL(hc) ucall(UCALL_PR_HCALL, 1, hc)
154 static void pr_msr(struct ucall *uc) in pr_msr()
161 static void pr_hcall(struct ucall *uc) in pr_hcall()
168 static void handle_abort(struct ucall *uc) in handle_abort()
179 struct ucall uc; in enter_guest()
H A Dtsc_msrs_test.c25 ucall(UCALL_ABORT, 4, \
80 struct ucall uc; in run_vcpu()
H A Dsvm_vmcall_test.c54 struct ucall uc; in main()
71 TEST_FAIL("Unknown ucall 0x%lx.", uc.cmd); in main()
H A Dvmx_close_while_nested_test.c68 struct ucall uc; in main()
84 TEST_FAIL("Unknown ucall %lu", uc.cmd); in main()
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/x86_64/
H A Dkvm_pv_test.c22 #define PR_MSR(msr) ucall(UCALL_PR_MSR, 1, msr)
62 #define PR_HCALL(hc) ucall(UCALL_PR_HCALL, 1, hc)
98 static void pr_msr(struct ucall *uc) in pr_msr()
105 static void pr_hcall(struct ucall *uc) in pr_hcall()
114 struct ucall uc; in enter_guest()
H A Dkvm_clock_test.c52 static void handle_sync(struct ucall *uc, struct kvm_clock_data *start, in handle_sync()
72 static void handle_abort(struct ucall *uc) in handle_abort()
109 struct ucall uc; in enter_guest()
130 TEST_ASSERT(0, "unhandled ucall: %ld\n", uc.cmd); in enter_guest()
H A Dvmx_nested_tsc_scaling_test.c27 #define GUEST_SLEEP(sec) ucall(UCALL_SYNC, 2, USLEEP, sec)
28 #define GUEST_CHECK(level, freq) ucall(UCALL_SYNC, 2, level, freq)
182 struct ucall uc; in main()
216 TEST_FAIL("Unknown ucall %lu", uc.cmd); in main()
H A Dcr4_cpuid_sync_test.c55 struct ucall uc; in main()
78 TEST_FAIL("Unknown ucall %lu", uc.cmd); in main()
H A Dsvm_vmcall_test.c50 struct ucall uc; in main()
64 TEST_FAIL("Unknown ucall 0x%lx.", uc.cmd); in main()
H A Dvmx_close_while_nested_test.c64 struct ucall uc; in main()
77 TEST_FAIL("Unknown ucall %lu", uc.cmd); in main()
H A Ducna_injection_test.c140 struct ucall uc; in run_vcpu_expect_gp()
178 struct ucall uc; in run_ucna_injection()
H A Dplatform_info_test.c39 struct ucall uc; in test_msr_platform_info_enabled()
47 "Received ucall other than UCALL_SYNC: %lu\n", uc.cmd); in test_msr_platform_info_enabled()
H A Dvmx_invalid_nested_guest_state.c59 struct ucall uc; in main()
101 TEST_FAIL("Unexpected ucall: %lu", uc.cmd); in main()
H A Duserspace_msr_exit_test.c399 struct ucall uc; in check_for_guest_assert()
469 struct ucall uc; in process_ucall_done()
476 "Unexpected ucall command: %lu, expected UCALL_DONE (%d)", in process_ucall_done()
482 struct ucall uc = {}; in process_ucall()
498 TEST_ASSERT(false, "Unexpected ucall"); in process_ucall()
594 struct ucall uc; in handle_ucall()
606 TEST_FAIL("Unknown ucall %lu", uc.cmd); in handle_ucall()
714 "Expected ucall state to be UCALL_SYNC."); in test_msr_permission_bitmap()
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/include/
H A Dkvm_util.h312 struct ucall { struct
319 void ucall(uint64_t cmd, int nargs, ...);
320 uint64_t get_ucall(struct kvm_vm *vm, uint32_t vcpu_id, struct ucall *uc);
323 ucall(UCALL_SYNC, 6, "hello", stage, arg1, arg2, arg3, arg4)
324 #define GUEST_SYNC(stage) ucall(UCALL_SYNC, 2, "hello", stage)
325 #define GUEST_DONE() ucall(UCALL_DONE, 0)
328 ucall(UCALL_ABORT, 2 + _nargs, \
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/
H A Dsystem_counter_offset_test.c72 static void handle_sync(struct ucall *uc, uint64_t start, uint64_t end) in handle_sync()
84 static void handle_abort(struct ucall *uc) in handle_abort()
92 struct ucall uc; in enter_guest()
111 TEST_ASSERT(0, "unhandled ucall %ld\n", in enter_guest()
H A DMakefile41 LIBKVM_x86_64 += lib/x86_64/ucall.c
49 LIBKVM_aarch64 += lib/aarch64/ucall.c
54 LIBKVM_s390x += lib/s390x/ucall.c
57 LIBKVM_riscv += lib/riscv/ucall.c
H A Dguest_print_test.c113 struct ucall uc; in run_test()
137 TEST_FAIL("Unknown ucall %lu", uc.cmd); in run_test()
157 struct ucall uc; in test_limits()
168 "Unexpected ucall command: %lu, Expected: %u (UCALL_ABORT)\n", in test_limits()
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/
H A DMakefile37 LIBKVM_x86_64 = lib/x86_64/processor.c lib/x86_64/vmx.c lib/x86_64/svm.c lib/x86_64/ucall.c lib/x86_64/handlers.S
38 LIBKVM_aarch64 = lib/aarch64/processor.c lib/aarch64/ucall.c
39 LIBKVM_s390x = lib/s390x/processor.c lib/s390x/ucall.c
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/aarch64/
H A Dpsci_test.c94 struct ucall uc; in enter_guest()
137 struct ucall uc; in host_test_cpu_on()
151 TEST_FAIL("Unhandled ucall: %lu", uc.cmd); in host_test_cpu_on()

Completed in 9 milliseconds

1234