]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - arch/x86/xen/smp.h
UBUNTU: Ubuntu-4.13.0-45.50
[mirror_ubuntu-artful-kernel.git] / arch / x86 / xen / smp.h
1 #ifndef _XEN_SMP_H
2
3 #ifdef CONFIG_SMP
4 extern void xen_send_IPI_mask(const struct cpumask *mask,
5 int vector);
6 extern void xen_send_IPI_mask_allbutself(const struct cpumask *mask,
7 int vector);
8 extern void xen_send_IPI_allbutself(int vector);
9 extern void xen_send_IPI_all(int vector);
10 extern void xen_send_IPI_self(int vector);
11
12 extern int xen_smp_intr_init(unsigned int cpu);
13 extern void xen_smp_intr_free(unsigned int cpu);
14 int xen_smp_intr_init_pv(unsigned int cpu);
15 void xen_smp_intr_free_pv(unsigned int cpu);
16
17 void xen_smp_cpus_done(unsigned int max_cpus);
18
19 void xen_smp_send_reschedule(int cpu);
20 void xen_smp_send_call_function_ipi(const struct cpumask *mask);
21 void xen_smp_send_call_function_single_ipi(int cpu);
22
23 struct xen_common_irq {
24 int irq;
25 char *name;
26 };
27 #else /* CONFIG_SMP */
28
29 static inline int xen_smp_intr_init(unsigned int cpu)
30 {
31 return 0;
32 }
33 static inline void xen_smp_intr_free(unsigned int cpu) {}
34
35 static inline int xen_smp_intr_init_pv(unsigned int cpu)
36 {
37 return 0;
38 }
39 static inline void xen_smp_intr_free_pv(unsigned int cpu) {}
40 #endif /* CONFIG_SMP */
41
42 #endif