[PATCH 17/22] KVM: nVMX: Add util to encode a VMCS field by its components

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Liran Alon <liran.alon@xxxxxxxxxx>
Signed-off-by: Jim Mattson <jmattson@xxxxxxxxxx>
---
 arch/x86/kvm/vmx.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index 162e9517faa8..9a0cf93ce8a7 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -4527,6 +4527,16 @@ static inline int vmcs_field_readonly(unsigned long field)
 	return (vmcs_field_type(field) == VMCS_FIELD_TYPE_READ_ONLY_DATA);
 }
 
+static inline unsigned long encode_vmcs_field(enum vmcs_field_width width,
+					      enum vmcs_field_type type,
+					      unsigned short index,
+					      bool high)
+{
+	WARN_ON(index >= 1u << 9);
+	index &= (1u << 9) - 1;
+	return (width << 13) | (type << 10) | (index << 1) | (high ? 1 : 0);
+}
+
 static void init_vmcs_shadow_fields(void)
 {
 	int i, j;
-- 
1.9.1




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux