When bootup on a bare metal env, hypervisor_x2apic_available should return ture so that "max_physical_apicid > 255" check in enable_IR_x2apic is useful.
Signed-off-by: Zhenzhong Duan <zhenzhong.d...@oracle.com> --- arch/x86/include/asm/hypervisor.h | 2 +- arch/x86/kernel/cpu/hypervisor.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/x86/include/asm/hypervisor.h b/arch/x86/include/asm/hypervisor.h index 2d4b5e6..d4c09b3 100644 --- a/arch/x86/include/asm/hypervisor.h +++ b/arch/x86/include/asm/hypervisor.h @@ -59,6 +59,6 @@ extern bool hypervisor_x2apic_available(void); #else static inline void init_hypervisor(struct cpuinfo_x86 *c) { } static inline void init_hypervisor_platform(void) { } -static inline bool hypervisor_x2apic_available(void) { return false; } +static inline bool hypervisor_x2apic_available(void) { return true; } #endif /* CONFIG_HYPERVISOR_GUEST */ #endif /* _ASM_X86_HYPERVISOR_H */ diff --git a/arch/x86/kernel/cpu/hypervisor.c b/arch/x86/kernel/cpu/hypervisor.c index 8727921..ee303cd 100644 --- a/arch/x86/kernel/cpu/hypervisor.c +++ b/arch/x86/kernel/cpu/hypervisor.c @@ -82,7 +82,7 @@ void __init init_hypervisor_platform(void) bool __init hypervisor_x2apic_available(void) { - return x86_hyper && + return !x86_hyper || x86_hyper->x2apic_available && x86_hyper->x2apic_available(); } -- 1.7.3 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/