Changeset View
Changeset View
Standalone View
Standalone View
head/sys/amd64/include/vmm_instruction_emul.h
| Show First 20 Lines • Show All 99 Lines • ▼ Show 20 Lines | |||||
| /* | /* | ||||
| * Like vm_gla2gpa, but no exceptions are injected into the guest and | * Like vm_gla2gpa, but no exceptions are injected into the guest and | ||||
| * PTEs are not changed. | * PTEs are not changed. | ||||
| */ | */ | ||||
| int vm_gla2gpa_nofault(struct vm *vm, int vcpuid, struct vm_guest_paging *paging, | int vm_gla2gpa_nofault(struct vm *vm, int vcpuid, struct vm_guest_paging *paging, | ||||
| uint64_t gla, int prot, uint64_t *gpa, int *is_fault); | uint64_t gla, int prot, uint64_t *gpa, int *is_fault); | ||||
| #endif /* _KERNEL */ | #endif /* _KERNEL */ | ||||
| void vie_restart(struct vie *vie); | |||||
| void vie_init(struct vie *vie, const char *inst_bytes, int inst_length); | void vie_init(struct vie *vie, const char *inst_bytes, int inst_length); | ||||
| /* | /* | ||||
| * Decode the instruction fetched into 'vie' so it can be emulated. | * Decode the instruction fetched into 'vie' so it can be emulated. | ||||
| * | * | ||||
| * 'gla' is the guest linear address provided by the hardware assist | * 'gla' is the guest linear address provided by the hardware assist | ||||
| * that caused the nested page table fault. It is used to verify that | * that caused the nested page table fault. It is used to verify that | ||||
| * the software instruction decoding is in agreement with the hardware. | * the software instruction decoding is in agreement with the hardware. | ||||
| Show All 19 Lines | |||||