vmcs_writel
vmcs_writel(GUEST_S_CET, s_cet);
vmcs_writel(GUEST_SSP, ssp);
vmcs_writel(GUEST_INTR_SSP_TABLE, ssp_tbl);
vmcs_writel(GUEST_ES_BASE, vmcs12->guest_es_base);
vmcs_writel(GUEST_CS_BASE, vmcs12->guest_cs_base);
vmcs_writel(GUEST_SS_BASE, vmcs12->guest_ss_base);
vmcs_writel(GUEST_DS_BASE, vmcs12->guest_ds_base);
vmcs_writel(GUEST_FS_BASE, vmcs12->guest_fs_base);
vmcs_writel(GUEST_GS_BASE, vmcs12->guest_gs_base);
vmcs_writel(GUEST_LDTR_BASE, vmcs12->guest_ldtr_base);
vmcs_writel(GUEST_TR_BASE, vmcs12->guest_tr_base);
vmcs_writel(GUEST_GDTR_BASE, vmcs12->guest_gdtr_base);
vmcs_writel(GUEST_IDTR_BASE, vmcs12->guest_idtr_base);
vmcs_writel(GUEST_PENDING_DBG_EXCEPTIONS,
vmcs_writel(GUEST_SYSENTER_ESP, vmcs12->guest_sysenter_esp);
vmcs_writel(GUEST_SYSENTER_EIP, vmcs12->guest_sysenter_eip);
vmcs_writel(CR0_GUEST_HOST_MASK, ~vcpu->arch.cr0_guest_owned_bits);
vmcs_writel(CR0_READ_SHADOW, nested_read_cr0(vmcs12));
vmcs_writel(CR4_READ_SHADOW, nested_read_cr4(vmcs12));
vmcs_writel(GUEST_CR3, vmcs12->guest_cr3);
vmcs_writel(GUEST_CR3, vcpu->arch.cr3);
vmcs_writel(GUEST_PENDING_DBG_EXCEPTIONS, pending_dbg);
vmcs_writel(GUEST_SYSENTER_ESP, vmcs12->host_ia32_sysenter_esp);
vmcs_writel(GUEST_SYSENTER_EIP, vmcs12->host_ia32_sysenter_eip);
vmcs_writel(GUEST_IDTR_BASE, vmcs12->host_idtr_base);
vmcs_writel(GUEST_GDTR_BASE, vmcs12->host_gdtr_base);
vmcs_writel(HOST_FS_BASE, fs_base);
vmcs_writel(HOST_GS_BASE, gs_base);
vmcs_writel(HOST_TR_BASE,
vmcs_writel(HOST_GDTR_BASE, (unsigned long)gdt); /* 22.2.4 */
vmcs_writel(HOST_IA32_SYSENTER_ESP,
vmcs_writel(GUEST_RFLAGS, rflags);
vmcs_writel(GUEST_RFLAGS, rflags);
vmcs_writel(GUEST_FS_BASE, data);
vmcs_writel(GUEST_GS_BASE, data);
vmcs_writel(GUEST_SYSENTER_EIP, data);
vmcs_writel(GUEST_SYSENTER_ESP, data);
vmcs_writel(GUEST_S_CET, data);
vmcs_writel(GUEST_SSP, data);
vmcs_writel(GUEST_INTR_SSP_TABLE, data);
vmcs_writel(GUEST_RFLAGS, flags);
vmcs_writel(GUEST_CR4, (vmcs_readl(GUEST_CR4) & ~X86_CR4_VME) |
vmcs_writel(sf->base, var.base);
vmcs_writel(GUEST_TR_BASE, kvm_vmx->tss_addr);
vmcs_writel(GUEST_RFLAGS, flags);
vmcs_writel(GUEST_CR4, vmcs_readl(GUEST_CR4) | X86_CR4_VME);
vmcs_writel(CR0_READ_SHADOW, cr0);
vmcs_writel(GUEST_CR0, hw_cr0);
vmcs_writel(GUEST_CR3, guest_cr3);
vmcs_writel(CR4_READ_SHADOW, cr4);
vmcs_writel(GUEST_CR4, hw_cr4);
vmcs_writel(sf->base, var->base);
vmcs_writel(GUEST_IDTR_BASE, dt->address);
vmcs_writel(GUEST_GDTR_BASE, dt->address);
vmcs_writel(sf->base, 0);
vmcs_writel(HOST_CR0, cr0); /* 22.2.3 */
vmcs_writel(HOST_CR3, cr3); /* 22.2.3 FIXME: shadow tables */
vmcs_writel(HOST_CR4, cr4); /* 22.2.3, 22.2.5 */
vmcs_writel(HOST_IDTR_BASE, host_idt_base); /* 22.2.4 */
vmcs_writel(HOST_RIP, (unsigned long)vmx_vmexit); /* 22.2.5 */
vmcs_writel(HOST_IA32_SYSENTER_ESP, 0);
vmcs_writel(HOST_IA32_SYSENTER_EIP, tmpl); /* 22.2.3 */
vmcs_writel(HOST_S_CET, kvm_host.s_cet);
vmcs_writel(HOST_SSP, 0);
vmcs_writel(HOST_INTR_SSP_TABLE, 0);
vmcs_writel(CR4_GUEST_HOST_MASK, ~vcpu->arch.cr4_guest_owned_bits);
vmcs_writel(HOST_FS_BASE, 0); /* 22.2.4 */
vmcs_writel(HOST_GS_BASE, 0); /* 22.2.4 */
vmcs_writel(CR0_GUEST_HOST_MASK, ~vmx->vcpu.arch.cr0_guest_owned_bits);
vmcs_writel(GUEST_SYSENTER_ESP, 0);
vmcs_writel(GUEST_SYSENTER_EIP, 0);
vmcs_writel(GUEST_CS_BASE, 0xffff0000ul);
vmcs_writel(GUEST_TR_BASE, 0);
vmcs_writel(GUEST_LDTR_BASE, 0);
vmcs_writel(GUEST_GDTR_BASE, 0);
vmcs_writel(GUEST_IDTR_BASE, 0);
vmcs_writel(GUEST_PENDING_DBG_EXCEPTIONS, 0);
vmcs_writel(GUEST_SSP, 0);
vmcs_writel(GUEST_INTR_SSP_TABLE, 0);
vmcs_writel(GUEST_S_CET, 0);
vmcs_writel(GUEST_PENDING_DBG_EXCEPTIONS,
vmcs_writel(CR0_READ_SHADOW, orig_val);
vmcs_writel(CR4_READ_SHADOW, orig_val);
vmcs_writel(GUEST_DR7, val);
vmcs_writel(HOST_RSP, host_rsp);
vmcs_writel(GUEST_RSP, vcpu->arch.regs[VCPU_REGS_RSP]);
vmcs_writel(GUEST_RIP, vcpu->arch.regs[VCPU_REGS_RIP]);
vmcs_writel(HOST_CR3, cr3);
vmcs_writel(HOST_CR4, cr4);