OSDN Git Service

x86/apic: Move IPI inlines into ipi.c
authorThomas Gleixner <tglx@linutronix.de>
Mon, 22 Jul 2019 18:47:10 +0000 (20:47 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 25 Jul 2019 14:11:57 +0000 (16:11 +0200)
No point in having them in an header file.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20190722105219.252225936@linutronix.de
arch/x86/include/asm/ipi.h
arch/x86/kernel/apic/ipi.c

index f73076b..8d4911b 100644 (file)
@@ -71,27 +71,8 @@ extern void default_send_IPI_mask_sequence_phys(const struct cpumask *mask,
 extern void default_send_IPI_mask_allbutself_phys(const struct cpumask *mask,
                                                         int vector);
 
-/* Avoid include hell */
-#define NMI_VECTOR 0x02
-
 extern int no_broadcast;
 
-static inline void __default_local_send_IPI_allbutself(int vector)
-{
-       if (no_broadcast || vector == NMI_VECTOR)
-               apic->send_IPI_mask_allbutself(cpu_online_mask, vector);
-       else
-               __default_send_IPI_shortcut(APIC_DEST_ALLBUT, vector, apic->dest_logical);
-}
-
-static inline void __default_local_send_IPI_all(int vector)
-{
-       if (no_broadcast || vector == NMI_VECTOR)
-               apic->send_IPI_mask(cpu_online_mask, vector);
-       else
-               __default_send_IPI_shortcut(APIC_DEST_ALLINC, vector, apic->dest_logical);
-}
-
 #ifdef CONFIG_X86_32
 extern void default_send_IPI_mask_sequence_logical(const struct cpumask *mask,
                                                         int vector);
index 82f9244..de97646 100644 (file)
@@ -198,15 +198,25 @@ void default_send_IPI_allbutself(int vector)
         * if there are no other CPUs in the system then we get an APIC send
         * error if we try to broadcast, thus avoid sending IPIs in this case.
         */
-       if (!(num_online_cpus() > 1))
+       if (num_online_cpus() < 2)
                return;
 
-       __default_local_send_IPI_allbutself(vector);
+       if (no_broadcast || vector == NMI_VECTOR) {
+               apic->send_IPI_mask_allbutself(cpu_online_mask, vector);
+       } else {
+               __default_send_IPI_shortcut(APIC_DEST_ALLBUT, vector,
+                                           apic->dest_logical);
+       }
 }
 
 void default_send_IPI_all(int vector)
 {
-       __default_local_send_IPI_all(vector);
+       if (no_broadcast || vector == NMI_VECTOR) {
+               apic->send_IPI_mask(cpu_online_mask, vector);
+       } else {
+               __default_send_IPI_shortcut(APIC_DEST_ALLINC, vector,
+                                           apic->dest_logical);
+       }
 }
 
 void default_send_IPI_self(int vector)