/freebsd/sys/amd64/vmm/intel/ |
H A D | vmcs.c | 194 vmcs_getreg(struct vmcs *vmcs, int running, int ident, uint64_t *retval) in vmcs_getreg() argument 215 VMPTRLD(vmcs); in vmcs_getreg() 220 VMCLEAR(vmcs); in vmcs_getreg() 226 vmcs_setreg(struct vmcs *vmcs, int running, int ident, uint64_t val) in vmcs_setreg() argument 242 VMPTRLD(vmcs); in vmcs_setreg() 247 VMCLEAR(vmcs); in vmcs_setreg() 253 vmcs_setdesc(struct vmcs *vmcs, int running, int seg, struct seg_desc *desc) in vmcs_setdesc() argument 263 VMPTRLD(vmcs); in vmcs_setdesc() 276 VMCLEAR(vmcs); in vmcs_setdesc() 281 vmcs_getdesc(struct vmcs *vmcs, int running, int seg, struct seg_desc *desc) in vmcs_getdesc() argument [all …]
|
H A D | vmcs.h | 36 struct vmcs { struct 41 CTASSERT(sizeof(struct vmcs) == PAGE_SIZE); argument 51 int vmcs_set_msr_save(struct vmcs *vmcs, u_long g_area, u_int g_count); 52 int vmcs_init(struct vmcs *vmcs); 53 int vmcs_getreg(struct vmcs *vmcs, int running, int ident, uint64_t *rv); 54 int vmcs_setreg(struct vmcs *vmcs, int running, int ident, uint64_t val); 55 int vmcs_getdesc(struct vmcs *vmcs, int running, int ident, 57 int vmcs_setdesc(struct vmcs *vmcs, int running, int ident, 60 int vmcs_getany(struct vmcs *vmcs, int running, int ident, uint64_t *val); 61 int vmcs_setany(struct vmcs *vmcs, int running, int ident, uint64_t val); [all …]
|
H A D | vmx_cpufunc.h | 32 struct vmcs; 74 vmclear(struct vmcs *vmcs) in vmclear() argument 79 addr = vtophys(vmcs); in vmclear() 103 vmptrld(struct vmcs *vmcs) in vmptrld() argument 108 addr = vtophys(vmcs); in vmptrld() 145 VMCLEAR(struct vmcs *vmcs) in VMCLEAR() argument 149 err = vmclear(vmcs); in VMCLEAR() 151 panic("%s: vmclear(%p) error %d", __func__, vmcs, err); in VMCLEAR() 157 VMPTRLD(struct vmcs *vmcs) in VMPTRLD() argument 163 err = vmptrld(vmcs); in VMPTRLD() [all …]
|
H A D | vmx.c | 1024 vmx_setup_cr_shadow(int which, struct vmcs *vmcs, uint32_t initial) in vmx_setup_cr_shadow() argument 1042 error = vmcs_setreg(vmcs, 0, VMCS_IDENT(mask_ident), mask_value); in vmx_setup_cr_shadow() 1046 error = vmcs_setreg(vmcs, 0, VMCS_IDENT(shadow_ident), initial); in vmx_setup_cr_shadow() 1052 #define vmx_setup_cr0_shadow(vmcs,init) vmx_setup_cr_shadow(0, (vmcs), (init)) argument 1053 #define vmx_setup_cr4_shadow(vmcs,init) vmx_setup_cr_shadow(4, (vmcs), (init)) argument 1135 struct vmcs *vmcs; in vmx_vcpu_init() local 1147 vcpu->vmcs = malloc_aligned(sizeof(*vmcs), PAGE_SIZE, M_VMX, in vmx_vcpu_init() 1154 vmcs = vcpu->vmcs; in vmx_vcpu_init() 1155 vmcs->identifier = vmx_revision(); in vmx_vcpu_init() 1156 error = vmclear(vmcs); in vmx_vcpu_init() [all …]
|
H A D | vmx.h | 130 struct vmcs *vmcs; member
|
/freebsd/contrib/processor-trace/libipt/test/src/ |
H A D | ptunit-asid.c | 63 ptu_uint_eq(asid.vmcs, pt_asid_no_vmcs); in from_user_default() 79 ptu_uint_eq(asid.vmcs, pt_asid_no_vmcs); in from_user_small() 91 user.vmcs = 0x23000ull; in from_user_big() 97 ptu_uint_eq(asid.vmcs, 0x23000ull); in from_user_big() 109 user.vmcs = 0x23000ull; in from_user() 115 ptu_uint_eq(asid.vmcs, 0x23000ull); in from_user() 125 user.size = offsetof(struct pt_asid, vmcs); in from_user_cr3() 127 user.vmcs = 0x23000ull; in from_user_cr3() 133 ptu_uint_eq(asid.vmcs, pt_asid_no_vmcs); in from_user_cr3() 182 ptu_uint_eq(user.vmcs, 0xccccccccccccccccull); in to_user_small() [all …]
|
H A D | ptunit-mapped_section.c | 100 asid.vmcs = 0xb00000ull; in asid() 107 ptu_uint_eq(pasid->vmcs, asid.vmcs); in asid() 122 ptu_uint_eq(pasid->vmcs, pt_asid_no_vmcs); in asid_null()
|
H A D | ptunit-packet.c | 378 static struct ptunit_result vmcs(struct packet_fixture *pfix) in vmcs() function 381 pfix->packet[0].payload.vmcs.base = 0xabcdef000ull; in vmcs() 618 ptu_run_f(suite, vmcs, pfix); in main()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86InstrVMX.td | 42 def VMCLEARm : I<0xC7, MRM6m, (outs), (ins i64mem:$vmcs), 43 "vmclear\t$vmcs", []>, TB, PD; 53 def VMPTRLDm : I<0xC7, MRM6m, (outs), (ins i64mem:$vmcs), 54 "vmptrld\t$vmcs", []>, TB; 55 def VMPTRSTm : I<0xC7, MRM7m, (outs), (ins i64mem:$vmcs), 56 "vmptrst\t$vmcs", []>, TB;
|
/freebsd/contrib/processor-trace/libipt/src/ |
H A D | pt_asid.c | 98 lvmcs = lhs->vmcs; in pt_asid_match() 99 rvmcs = rhs->vmcs; in pt_asid_match()
|
H A D | pt_insn_decoder.c | 1574 uint64_t vmcs; in pt_insn_process_vmcs() local 1580 vmcs = decoder->event.variant.vmcs.base; in pt_insn_process_vmcs() 1581 if (decoder->asid.vmcs != vmcs) { in pt_insn_process_vmcs() 1586 decoder->asid.vmcs = vmcs; in pt_insn_process_vmcs()
|
H A D | pt_block_decoder.c | 3193 uint64_t vmcs; in pt_blk_process_vmcs() local 3199 vmcs = ev->variant.vmcs.base; in pt_blk_process_vmcs() 3200 if (decoder->asid.vmcs != vmcs) { in pt_blk_process_vmcs() 3205 decoder->asid.vmcs = vmcs; in pt_blk_process_vmcs()
|
H A D | pt_encoder.c | 547 packet->payload.vmcs.base >> pt_pl_vmcs_shl, in pt_enc_next() 906 packet.payload.vmcs.base = payload; in pt_encode_vmcs()
|
H A D | pt_packet_decoder.c | 615 size = pt_pkt_read_vmcs(&packet->payload.vmcs, decoder->pos, in pt_pkt_decode_vmcs()
|
H A D | pt_query_decoder.c | 3429 event->variant.vmcs.base = packet.base; in pt_qry_decode_vmcs()
|
/freebsd/contrib/processor-trace/libipt/include/ |
H A D | intel-pt.h | 875 struct pt_packet_vmcs vmcs; member 1331 } vmcs; member 1671 uint64_t vmcs; member 1685 asid->vmcs = pt_asid_no_vmcs; in pt_asid_init()
|
H A D | intel-pt.h.in | 874 /** Packet: vmcs. */ 875 struct pt_packet_vmcs vmcs; member 1129 /* A synchronous vmcs event. */ 1132 /* An asynchronous vmcs event. */ 1319 /** Event: vmcs. */ 1331 } vmcs; member 1333 /** Event: async vmcs. */ 1346 * will always succeed this async vmcs event. 1671 uint64_t vmcs; member 1685 asid->vmcs = pt_asid_no_vmcs;
|
/freebsd/sys/modules/vmm/ |
H A D | Makefile | 104 vmcs.c \
|