[PATCH v2 kvm-unit-tests 0/4] remove tss_descr, replace with a function

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

 



tss_descr is declared as a struct descriptor_table_ptr but it is actualy
pointing to an _entry_ in the GDT.  Also it is different per CPU, but
tss_descr does not recognize that.  Fix both by reusing the code
(already present e.g. in the vmware_backdoors test) that extracts
the base from the GDT entry; and also provide a helper to retrieve
the limit, which is needed in vmx.c.

Patch 1 adjusts the structs for GDT descriptors, so that the same
code works for both 32-bit and 64-bit.

Paolo

v1->v2: correctly handle segment descriptors
	remove duplication between struct definitions

v2->v3: improve handling of 16-byte GDT descriptors
	rename limit bitfield to limit2
	retrieve guest TR limit from the GDT
	new patch 2 adds another cleanup

Paolo Bonzini (4):
  x86: cleanup handling of 16-byte GDT descriptors
  x86: fix call to set_gdt_entry
  unify field names and definitions for GDT descriptors
  replace tss_descr global with a function

 lib/x86/desc.c         | 52 ++++++++++++++++++++++++++++++++----------
 lib/x86/desc.h         | 23 ++++++++++---------
 x86/cstart64.S         |  1 -
 x86/svm_tests.c        | 15 +++---------
 x86/taskswitch.c       |  2 +-
 x86/vmware_backdoors.c | 22 +++++-------------
 x86/vmx.c              |  9 ++++----
 7 files changed, 67 insertions(+), 57 deletions(-)

-- 
2.27.0




[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