x86/xen: Add "nopv" support for HVM guest
authorZhenzhong Duan <zhenzhong.duan@oracle.com>
Tue, 16 Jul 2019 04:26:09 +0000 (12:26 +0800)
committerJuergen Gross <jgross@suse.com>
Wed, 17 Jul 2019 06:09:59 +0000 (08:09 +0200)
commitbef6e0ae7420bfddfb150dda529bbe835f87b9f2
tree0a40c3408e37c9ddb6579f23d3d7f84f57807be4
parentcc8f3b4dd2eb859bc57187ccd94b5cd715d9cfba
x86/xen: Add "nopv" support for HVM guest

PVH guest needs PV extentions to work, so "nopv" parameter should be
ignored for PVH but not for HVM guest.

If PVH guest boots up via the Xen-PVH boot entry, xen_pvh is set early,
we know it's PVH guest and ignore "nopv" parameter directly.

If PVH guest boots up via the normal boot entry same as HVM guest, it's
hard to distinguish PVH and HVM guest at that time. In this case, we
have to panic early if PVH is detected and nopv is enabled to avoid a
worse situation later.

Remove static from bool_x86_init_noop/x86_op_int_noop so they could be
used globally. Move xen_platform_hvm() after xen_hvm_guest_late_init()
to avoid compile error.

Signed-off-by: Zhenzhong Duan <zhenzhong.duan@oracle.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Juergen Gross <jgross@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Signed-off-by: Juergen Gross <jgross@suse.com>
arch/x86/include/asm/x86_init.h
arch/x86/kernel/x86_init.c
arch/x86/xen/enlighten_hvm.c