Home
last modified time | relevance | path

Searched refs:vexit (Results 1 – 25 of 26) sorted by relevance

12

/illumos-gate/usr/src/test/bhyve-tests/tests/inst_emul/
H A Dexit_consistent.c35 struct vm_exit *vexit) in run_until_unhandled() argument
50 test_fail_vmexit(vexit); in run_until_unhandled()
97 test_fail_vmexit(&vexit); in main()
107 if (rip != vexit.rip) { in main()
110 rip, vexit.rip); in main()
135 vexit.rip, rip + 2); in main()
142 repeat_consistent_exit(vcpu, &ventry, &vexit, vexit.rip); in main()
153 rip = vexit.rip; in main()
163 if (vexit.rip != rip || in main()
179 vexit.rip, rip + 3); in main()
[all …]
H A Dimul.c40 if (vexit->u.mmio.read == 0) { in handle_test_mmio()
45 if (vexit->u.mmio.gpa < MMIO_TEST_BASE || in handle_test_mmio()
46 vexit->u.mmio.gpa >= MMIO_TEST_END) { in handle_test_mmio()
57 const uint16_t addr = vexit->u.mmio.gpa; in handle_test_mmio()
59 switch (vexit->u.mmio.bytes) { in handle_test_mmio()
75 ventry_fulfill_mmio(vexit, ventry, val); in handle_test_mmio()
99 struct vm_exit vexit = { 0 }; in main() local
103 test_run_vcpu(vcpu, &ventry, &vexit); in main()
108 if (!handle_test_mmio(&vexit, &ventry)) { in main()
109 test_fail_vmexit(&vexit); in main()
[all …]
H A Dexit_paging.c54 struct vm_exit vexit = { 0 }; in main() local
61 test_run_vcpu(vcpu, &ventry, &vexit); in main()
66 if (vexit.exitcode != VM_EXITCODE_PAGING) { in main()
67 test_fail_vmexit(&vexit); in main()
69 if (vexit.u.paging.gpa != expected_gpa) { in main()
71 vexit.u.paging.gpa, expected_gpa); in main()
73 if (vexit.u.paging.fault_type != expected_ftype) { in main()
75 vexit.u.paging.fault_type, expected_ftype); in main()
81 test_fail_vmexit(&vexit); in main()
H A Dwrmsr.c53 struct vm_exit vexit = { 0 }; in main() local
59 test_run_vcpu(vcpu, &ventry, &vexit); in main()
65 if (vexit.exitcode != VM_EXITCODE_WRMSR) { in main()
66 test_fail_vmexit(&vexit); in main()
68 if (vexit.u.msr.code != expected_code) { in main()
70 vexit.u.msr.code, expected_code); in main()
72 if (vexit.u.msr.wval != expected_wval) { in main()
74 vexit.u.msr.wval, expected_wval); in main()
82 test_fail_vmexit(&vexit); in main()
H A Dsuspend_info.c55 struct vm_exit vexit = { 0 }; in vcpu0_thread() local
60 test_run_vcpu(vcpu, &ventry, &vexit); in vcpu0_thread()
66 test_fail_vmexit(&vexit); in vcpu0_thread()
68 *vtc->howp = vexit.u.suspended.how; in vcpu0_thread()
69 *vtc->sourcep = vexit.u.suspended.source; in vcpu0_thread()
72 test_fail_vmexit(&vexit); in vcpu0_thread()
185 struct vm_exit vexit = { 0 }; in test_emitted_triplefault() local
188 test_run_vcpu(vcpu1, &ventry, &vexit); in test_emitted_triplefault()
195 test_fail_vmexit(&vexit); in test_emitted_triplefault()
199 vexit.u.suspended.how; in test_emitted_triplefault()
[all …]
H A Drdmsr.c53 struct vm_exit vexit = { 0 }; in main() local
58 test_run_vcpu(vcpu, &ventry, &vexit); in main()
64 if (vexit.exitcode != VM_EXITCODE_RDMSR) { in main()
65 test_fail_vmexit(&vexit); in main()
67 if (vexit.u.msr.code != expected_code) { in main()
69 vexit.u.msr.code, expected_code); in main()
77 test_fail_vmexit(&vexit); in main()
H A Dtriple_fault.c53 struct vm_exit vexit = { 0 }; in main() local
58 test_run_vcpu(vcpu, &ventry, &vexit); in main()
64 if (vexit.exitcode != VM_EXITCODE_SUSPENDED) { in main()
65 test_fail_vmexit(&vexit); in main()
67 if (vexit.u.suspended.how != expected_how) { in main()
69 vexit.u.suspended.how, expected_how); in main()
77 test_fail_vmexit(&vexit); in main()
H A Dcpuid.c142 struct vm_exit vexit = { 0 }; in main() local
146 test_run_vcpu(vcpu, &ventry, &vexit); in main()
154 test_fail_msg("failed result %rip: %x", vexit.rip); in main()
158 if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 4, in main()
170 ventry_fulfill_inout(&vexit, &ventry, 0); in main()
172 test_fail_vmexit(&vexit); in main()
178 test_fail_vmexit(&vexit); in main()
H A Dvcpu_barrier.c47 struct vm_exit vexit = { 0 }; in vcpu0_thread() local
50 int err = vm_run(vcpu, &ventry, &vexit); in vcpu0_thread()
54 switch (vexit.exitcode) { in vcpu0_thread()
59 test_fail_vmexit(&vexit); in vcpu0_thread()
H A Dpage_dirty.c208 struct vm_exit vexit = { 0 }; in main() local
211 test_run_vcpu(vcpu, &ventry, &vexit); in main()
236 test_fail_vmexit(&vexit); in main()
/illumos-gate/usr/src/test/bhyve-tests/tests/common/
H A Din_guest.c194 switch (vexit->exitcode) { in test_fail_vmexit()
202 vexit->u.inout.eax, in test_fail_vmexit()
203 vexit->u.inout.port, in test_fail_vmexit()
204 vexit->u.inout.bytes, in test_fail_vmexit()
216 vexit->u.msr.code, vexit->u.msr.wval); in test_fail_vmexit()
225 vexit->u.mmio.bytes, in test_fail_vmexit()
227 vexit->u.mmio.gpa, in test_fail_vmexit()
228 vexit->u.mmio.data); in test_fail_vmexit()
238 vexit->u.vmx.status, in test_fail_vmexit()
249 vexit->rip); in test_fail_vmexit()
[all …]
/illumos-gate/usr/src/test/bhyve-tests/tests/kdev/
H A Dvlapic_freq_periodic.c98 struct vm_entry *ventry, struct vm_exit *vexit) in run_test() argument
109 test_run_vcpu(vcpu, ventry, vexit); in run_test()
113 test_fail_vmexit(vexit); in run_test()
118 ventry_fulfill_inout(vexit, ventry, divisor); in run_test()
123 ventry_fulfill_inout(vexit, ventry, loops); in run_test()
128 if (vexit_match_inout(vexit, false, IOP_TEST_VALUE, 4, &v)) { in run_test()
131 ventry_fulfill_inout(vexit, ventry, 0); in run_test()
153 test_fail_vmexit(vexit); in run_test()
178 struct vm_exit vexit = { 0 }; in main() local
180 run_test(vcpu, 4, 3, &ventry, &vexit); in main()
[all …]
H A Dvlapic_freq.c93 struct vm_exit *vexit) in test_for_divisor() argument
104 test_run_vcpu(vcpu, ventry, vexit); in test_for_divisor()
108 test_fail_vmexit(vexit); in test_for_divisor()
113 ventry_fulfill_inout(vexit, ventry, divisor); in test_for_divisor()
118 if (vexit_match_inout(vexit, false, IOP_TEST_VALUE, 4, &v)) { in test_for_divisor()
121 ventry_fulfill_inout(vexit, ventry, 0); in test_for_divisor()
143 test_fail_vmexit(vexit); in test_for_divisor()
168 struct vm_exit vexit = { 0 }; in main() local
170 test_for_divisor(vcpu, 2, &ventry, &vexit); in main()
171 test_for_divisor(vcpu, 4, &ventry, &vexit); in main()
[all …]
H A Dvlapic_mmio_access.c79 struct vm_exit vexit = { 0 }; in main() local
83 test_run_vcpu(vcpu, &ventry, &vexit); in main()
103 if (vexit.exitcode == VM_EXITCODE_VMX && in main()
104 (vexit.u.vmx.exit_reason == 44 || in main()
105 vexit.u.vmx.exit_reason == 56)) { in main()
107 test_fail_vmexit(&vexit); in main()
115 test_fail_vmexit(&vexit); in main()
118 test_fail_vmexit(&vexit); in main()
H A Drdmsr_tsc.c52 struct vm_entry ventry = { 0 }; struct vm_exit vexit = { 0 }; in main() local
58 test_run_vcpu(vcpu, &ventry, &vexit); in main()
63 test_fail_vmexit(&vexit); in main()
67 if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 4, in main()
73 ventry_fulfill_inout(&vexit, &ventry, 0); in main()
96 test_fail_vmexit(&vexit); in main()
H A Dwrmsr_tsc.c52 struct vm_entry ventry = { 0 }; struct vm_exit vexit = { 0 }; in main() local
58 test_run_vcpu(vcpu, &ventry, &vexit); in main()
63 test_fail_vmexit(&vexit); in main()
67 if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 4, in main()
73 ventry_fulfill_inout(&vexit, &ventry, 0); in main()
95 test_fail_vmexit(&vexit); in main()
H A Dguest_tsc_adjust.c82 struct vm_exit vexit = { 0 }; in main() local
89 test_run_vcpu(vcpu, &ventry, &vexit); in main()
94 test_fail_vmexit(&vexit); in main()
98 if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 4, in main()
104 ventry_fulfill_inout(&vexit, &ventry, 0); in main()
122 test_fail_vmexit(&vexit); in main()
H A Dvpmtmr_freq.c108 struct vm_exit vexit = { 0 }; in main() local
118 test_run_vcpu(vcpu, &ventry, &vexit); in main()
122 test_fail_vmexit(&vexit); in main()
126 if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 4, &v)) { in main()
128 readings[nread].value = vexit.u.inout.eax; in main()
130 ventry_fulfill_inout(&vexit, &ventry, 0); in main()
151 test_fail_vmexit(&vexit); in main()
H A Dvatpit_freq.c98 struct vm_exit vexit = { 0 }; in main() local
112 test_run_vcpu(vcpu, &ventry, &vexit); in main()
116 test_fail_vmexit(&vexit); in main()
120 if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 2, &v)) { in main()
124 ventry_fulfill_inout(&vexit, &ventry, 0); in main()
145 test_fail_vmexit(&vexit); in main()
H A Dvhpet_freq.c103 struct vm_exit vexit = { 0 }; in main() local
113 test_run_vcpu(vcpu, &ventry, &vexit); in main()
117 test_fail_vmexit(&vexit); in main()
121 if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 4, &v)) { in main()
125 ventry_fulfill_inout(&vexit, &ventry, 0); in main()
146 test_fail_vmexit(&vexit); in main()
H A Dtsc_freq_ctrl.c129 struct vm_exit vexit = { 0 }; in do_freq_test() local
145 test_run_vcpu(vcpu, &ventry, &vexit); in do_freq_test()
150 test_fail_vmexit(&vexit); in do_freq_test()
154 if (vexit_match_inout(&vexit, true, IOP_TEST_VALUE, 4, in do_freq_test()
157 ventry_fulfill_inout(&vexit, &ventry, guest_ticks); in do_freq_test()
159 } else if (vexit_match_inout(&vexit, false, IOP_TEST_VALUE, 4, in do_freq_test()
169 ventry_fulfill_inout(&vexit, &ventry, 0); in do_freq_test()
181 ventry_fulfill_inout(&vexit, &ventry, 0); in do_freq_test()
184 test_fail_vmexit(&vexit); in do_freq_test()
H A Dvlapic_msr_access.c59 struct vm_exit vexit = { 0 }; in main() local
63 test_run_vcpu(vcpu, &ventry, &vexit); in main()
75 test_fail_vmexit(&vexit); in main()
H A Dvrtc_ops.c86 struct vm_exit vexit = { 0 }; in main() local
90 test_run_vcpu(vcpu, &ventry, &vexit); in main()
109 test_fail_vmexit(&vexit); in main()
/illumos-gate/usr/src/test/bhyve-tests/tests/perf/
H A Dentry_exit.c101 handle_exit(struct vmctx *ctx, const struct vm_exit *vexit, in handle_exit() argument
106 if (vexit_match_inout(vexit, true, IOP_TEST_PARAM0, 4, NULL)) { in handle_exit()
107 ventry_fulfill_inout(vexit, ventry, opt_repeat_count); in handle_exit()
110 if (vexit_match_inout(vexit, false, IOP_TEST_VALUE, 4, &outval)) { in handle_exit()
111 ventry_fulfill_inout(vexit, ventry, 0); in handle_exit()
118 test_fail_vmexit(vexit); in handle_exit()
198 struct vm_exit vexit = { 0 }; in main() local
202 test_run_vcpu(vcpu, &ventry, &vexit); in main()
207 handle_exit(ctx, &vexit, &ventry); in main()
222 test_fail_vmexit(&vexit); in main()
/illumos-gate/usr/src/test/bhyve-tests/tests/vmm/
H A Dpause_resume.c107 struct vm_exit vexit = { 0 }; in main() local
108 if (vm_run(vcpu, &ventry, &vexit) == 0) { in main()

12