[PATCH] Fix set apic mode from x2apic enabled bit patch
From: Mike Travis
Date: Thu Apr 15 2021 - 18:07:02 EST
Do not set uv_system_type for hubless UV systems as it tricks the
is_uv_system function into thinking it's a UV hubbed system and includes
a UV HUB RTC. This causes UV RTC init to panic on UV hubless systems.
Fixes: 41e2da9b5e67 ("x86/platform/uv: Use x2apic enabled bit as set by BIOS to indicate APIC mode")
[41e2da9b5e67 was accepted into tip x86/platform branch but not yet
pulled into the linus tree.]
Signed-off-by: Mike Travis <mike.travis@xxxxxxx>
Reviewed-by: Steve Wahl <steve.wahl@xxxxxxx>
Reviewed-by: Dimitri Sivanich <dimitri.sivanich@xxxxxxx>
---
arch/x86/kernel/apic/x2apic_uv_x.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/x86/kernel/apic/x2apic_uv_x.c b/arch/x86/kernel/apic/x2apic_uv_x.c
index 2e99605f9a05..68ef9abc91f7 100644
--- a/arch/x86/kernel/apic/x2apic_uv_x.c
+++ b/arch/x86/kernel/apic/x2apic_uv_x.c
@@ -413,9 +413,8 @@ static int __init uv_set_system_type(char *_oem_id, char *_oem_table_id)
else
uv_hubless_system |= 0x8;
- /* Copy OEM Table ID and set APIC Mode */
+ /* Copy OEM Table ID */
uv_stringify(sizeof(oem_table_id), oem_table_id, _oem_table_id);
- early_set_apic_mode();
pr_info("UV: OEM IDs %s/%s, SystemType %d, HUBLESS ID %x\n",
oem_id, oem_table_id, uv_system_type, uv_hubless_system);
--
2.21.0