OSDN Git Service

x86/virt/xen: Use guest_late_init to detect Xen PVH guest
authorJuergen Gross <jgross@suse.com>
Thu, 9 Nov 2017 13:27:39 +0000 (14:27 +0100)
committerIngo Molnar <mingo@kernel.org>
Fri, 10 Nov 2017 09:03:14 +0000 (10:03 +0100)
commit418492ba40b2c2bbdaf1a169aac5b1673bde8189
tree2deefed6dc8b2571b7f226effb8e4fa3596f5404
parentf3614646005a1b59f836ff54351c9bd2224b6005
x86/virt/xen: Use guest_late_init to detect Xen PVH guest

In case we are booted via the default boot entry by a generic loader
like grub or OVMF it is necessary to distinguish between a HVM guest
with a device model supporting legacy devices and a PVH guest without
device model.

PVH guests will always have x86_platform.legacy.no_vga set and
x86_platform.legacy.rtc cleared, while both won't be true for HVM
guests.

Test for both conditions in the guest_late_init hook and set xen_pvh
to true if they are met.

Move some of the early PVH initializations to the new hook in order
to avoid duplicated code.

Signed-off-by: Juergen Gross <jgross@suse.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: boris.ostrovsky@oracle.com
Cc: xen-devel@lists.xenproject.org
Link: http://lkml.kernel.org/r/20171109132739.23465-6-jgross@suse.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/xen/enlighten_hvm.c
arch/x86/xen/enlighten_pvh.c