Re: [PATCH RFC Linux] x86/xen: allow using x2APIC under Xen without CONFIG_XEN enabled

From: Boris Ostrovsky
Date: Mon Aug 31 2015 - 15:21:20 EST


On 08/20/2015 08:04 AM, Jan Beulich wrote:
While commit 4cca6ea04d31c claims to not have any functional effect on
Xen, this isn't the case: Before that change, kernels built without
CONFIG_XEN_PVHVM (a dependency which meanwhile became just CONFIG_XEN)
were able to run in x2APIC mode just fine. Restore that behavior.

This, however, still doesn't fix the case where CONFIG_HYPERVISOR_GUEST
is not enabled, but I suppose this may be regarded as intentional.

Signed-off-by: Jan Beulich<jbeulich@xxxxxxxx>
---
The patch is RFC solely because the way the issue gets fixed doesn't
look very neat, but I couldn't figure out a better way.

(+ x86 maintainers)

Can we provide something like xen_stub.c (that will have its own x86_hyper ops, probably only x2apic_available and maybe detect) which is built when !CONFIG_XEN?

Otherwise I see little reason to keep x2apic_available op and we should revert the portion of 4cca6ea04d31c that introduced it.

-boris

---
arch/x86/kernel/cpu/hypervisor.c | 4 ++++
1 file changed, 4 insertions(+)

--- 4.2-rc7/arch/x86/kernel/cpu/hypervisor.c
+++ 4.2-rc7-x86-xen-x2apic-available/arch/x86/kernel/cpu/hypervisor.c
@@ -81,6 +81,10 @@ void __init init_hypervisor_platform(voi
bool __init hypervisor_x2apic_available(void)
{
+#ifndef CONFIG_XEN
+ if (xen_x2apic_para_available())
+ return true;
+#endif
return x86_hyper &&
x86_hyper->x2apic_available &&
x86_hyper->x2apic_available();




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/