xen/pvh: Indicate XENFEAT_linux_rsdp_unrestricted to Xen
authorBoris Ostrovsky <boris.ostrovsky@oracle.com>
Mon, 9 Apr 2018 18:51:44 +0000 (14:51 -0400)
committerBoris Ostrovsky <boris.ostrovsky@oracle.com>
Tue, 10 Apr 2018 13:22:22 +0000 (09:22 -0400)
commita5a18ae73bcac37010a7b37e942add0f25b9d503
tree01c8179767ce888e94a264612d56d166f60b2999
parentc37a3c94775855567b90f91775b9691e10bd2806
xen/pvh: Indicate XENFEAT_linux_rsdp_unrestricted to Xen

Pre-4.17 kernels ignored start_info's rsdp_paddr pointer and instead
relied on finding RSDP in standard location in BIOS RO memory. This
has worked since that's where Xen used to place it.

However, with recent Xen change (commit 4a5733771e6f ("libxl: put RSDP
for PVH guest near 4GB")) it prefers to keep RSDP at a "non-standard"
address. Even though as of commit b17d9d1df3c3 ("x86/xen: Add pvh
specific rsdp address retrieval function") Linux is able to find RSDP,
for back-compatibility reasons we need to indicate to Xen that we can
handle this, an we do so by setting XENFEAT_linux_rsdp_unrestricted
flag in ELF notes.

(Also take this opportunity and sync features.h header file with Xen)

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
arch/x86/xen/xen-head.S
include/xen/interface/features.h