12 #include <linux/module.h>
16 #include <asm/tlbflush.h>
17 #include <asm/mmu_context.h>
24 unsigned long query_cpu;
34 __default_send_IPI_dest_field(
per_cpu(x86_cpu_to_apicid,
44 unsigned int query_cpu;
51 if (query_cpu == this_cpu)
53 __default_send_IPI_dest_field(
per_cpu(x86_cpu_to_apicid,
61 void default_send_IPI_mask_sequence_logical(
const struct cpumask *
mask,
65 unsigned int query_cpu;
75 __default_send_IPI_dest_field(
77 vector,
apic->dest_logical);
85 unsigned int query_cpu;
92 if (query_cpu == this_cpu)
94 __default_send_IPI_dest_field(
104 void default_send_IPI_mask_logical(
const struct cpumask *
cpumask,
int vector)
118 void default_send_IPI_allbutself(
int vector)
127 __default_local_send_IPI_allbutself(vector);
130 void default_send_IPI_all(
int vector)
132 __default_local_send_IPI_all(vector);
135 void default_send_IPI_self(
int vector)
141 static int convert_apicid_to_cpu(
int apic_id)
146 if (
per_cpu(x86_cpu_to_apicid, i) == apic_id)
163 cpuid = convert_apicid_to_cpu(apicid);
165 return cpuid >= 0 ? cpuid : 0;