diff options
Diffstat (limited to 'arch/x86/kernel/apic/ipi.c')
| -rw-r--r-- | arch/x86/kernel/apic/ipi.c | 15 | 
1 files changed, 7 insertions, 8 deletions
diff --git a/arch/x86/kernel/apic/ipi.c b/arch/x86/kernel/apic/ipi.c index 08385e090a6..62071569bd5 100644 --- a/arch/x86/kernel/apic/ipi.c +++ b/arch/x86/kernel/apic/ipi.c @@ -1,6 +1,5 @@  #include <linux/cpumask.h>  #include <linux/interrupt.h> -#include <linux/init.h>  #include <linux/mm.h>  #include <linux/delay.h> @@ -56,6 +55,8 @@ void default_send_IPI_mask_allbutself_phys(const struct cpumask *mask,  	local_irq_restore(flags);  } +#ifdef CONFIG_X86_32 +  void default_send_IPI_mask_sequence_logical(const struct cpumask *mask,  						 int vector)  { @@ -71,8 +72,8 @@ void default_send_IPI_mask_sequence_logical(const struct cpumask *mask,  	local_irq_save(flags);  	for_each_cpu(query_cpu, mask)  		__default_send_IPI_dest_field( -			apic->cpu_to_logical_apicid(query_cpu), vector, -			apic->dest_logical); +			early_per_cpu(x86_cpu_to_logical_apicid, query_cpu), +			vector, apic->dest_logical);  	local_irq_restore(flags);  } @@ -90,14 +91,12 @@ void default_send_IPI_mask_allbutself_logical(const struct cpumask *mask,  		if (query_cpu == this_cpu)  			continue;  		__default_send_IPI_dest_field( -			apic->cpu_to_logical_apicid(query_cpu), vector, -			apic->dest_logical); +			early_per_cpu(x86_cpu_to_logical_apicid, query_cpu), +			vector, apic->dest_logical);  		}  	local_irq_restore(flags);  } -#ifdef CONFIG_X86_32 -  /*   * This is only used on smaller machines.   */ @@ -106,7 +105,7 @@ void default_send_IPI_mask_logical(const struct cpumask *cpumask, int vector)  	unsigned long mask = cpumask_bits(cpumask)[0];  	unsigned long flags; -	if (WARN_ONCE(!mask, "empty IPI mask")) +	if (!mask)  		return;  	local_irq_save(flags);  | 
