[PATCH 0/8] PVH v2 support

From: Boris Ostrovsky
Date: Fri Oct 14 2016 - 14:10:32 EST


(Resending with proper mailing lists included)

PVH v2 support for unprivileged guests.

Previous version was posted long time ago. Major changes:
1. Drop PVH v1 support
2. Enable ACPI. This allows us to use much more of native code and
results in making this series much simpler (for example, PV-style
VCPU bringup is no longer necessary).
3. Refactor 32-bit pagetable setup from native code (by Matt Fleming)

This has been tested on Intel/AMD, both 32- and 64-bit, including CPU
hotplug and save/restore. Compile-tested for ARM.


Boris Ostrovsky (8):
xen/x86: Remove PVH support
x86/head: Refactor 32-bit pgtable setup
xen/pvh: Import PVH-related Xen public interfaces
xen/pvh: Bootstrap PVH guest
xen/pvh: Prevent PVH guests from using PIC, RTC and IOAPIC
xen/pvh: Initialize grant table for PVH guests
xen/pvh: PVH guests always have PV devices
xen/pvh: Enable CPU hotplug

arch/x86/Makefile | 2 +
arch/x86/kernel/Makefile | 2 +
arch/x86/kernel/head_32.S | 168 +---------------------
arch/x86/kernel/pgtable_32.S | 196 +++++++++++++++++++++++++
arch/x86/xen/Kconfig | 2 +-
arch/x86/xen/Makefile | 1 +
arch/x86/xen/enlighten.c | 251 ++++++++++++++++-----------------
arch/x86/xen/mmu.c | 21 +--
arch/x86/xen/platform-pci-unplug.c | 4 +-
arch/x86/xen/setup.c | 37 +----
arch/x86/xen/smp.c | 78 ++++------
arch/x86/xen/smp.h | 8 --
arch/x86/xen/xen-head.S | 62 +-------
arch/x86/xen/xen-ops.h | 1 -
arch/x86/xen/xen-pvh.S | 143 +++++++++++++++++++
drivers/xen/cpu_hotplug.c | 2 +-
drivers/xen/events/events_base.c | 1 -
drivers/xen/grant-table.c | 8 +-
include/xen/interface/elfnote.h | 12 +-
include/xen/interface/hvm/hvm_vcpu.h | 143 +++++++++++++++++++
include/xen/interface/hvm/start_info.h | 98 +++++++++++++
include/xen/xen.h | 12 +-
22 files changed, 764 insertions(+), 488 deletions(-)
create mode 100644 arch/x86/kernel/pgtable_32.S
create mode 100644 arch/x86/xen/xen-pvh.S
create mode 100644 include/xen/interface/hvm/hvm_vcpu.h
create mode 100644 include/xen/interface/hvm/start_info.h

--
1.8.3.1