x86/apic: Fix use of X{,2}APIC_ENABLE in asm with older binutils
authorAndrew Cooper <andrew.cooper3@citrix.com>
Mon, 22 May 2023 10:57:38 +0000 (11:57 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Mon, 22 May 2023 12:06:33 +0000 (14:06 +0200)
"x86/smpboot: Support parallel startup of secondary CPUs" adds the first use
of X2APIC_ENABLE in assembly, but older binutils don't tolerate the UL suffix.

Switch to using BIT() instead.

Fixes: 7e75178a0950 ("x86/smpboot: Support parallel startup of secondary CPUs")
Reported-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
Link: https://lore.kernel.org/r/20230522105738.2378364-1-andrew.cooper3@citrix.com
arch/x86/include/asm/apicdef.h

index bf546df..4b125e5 100644 (file)
@@ -2,6 +2,8 @@
 #ifndef _ASM_X86_APICDEF_H
 #define _ASM_X86_APICDEF_H
 
+#include <linux/bits.h>
+
 /*
  * Constants for various Intel APICs. (local APIC, IOAPIC, etc.)
  *
 #define APIC_BASE (fix_to_virt(FIX_APIC_BASE))
 #define APIC_BASE_MSR          0x800
 #define APIC_X2APIC_ID_MSR     0x802
-#define XAPIC_ENABLE   (1UL << 11)
-#define X2APIC_ENABLE  (1UL << 10)
+#define XAPIC_ENABLE           BIT(11)
+#define X2APIC_ENABLE          BIT(10)
 
 #ifdef CONFIG_X86_32
 # define MAX_IO_APICS 64