cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

smp.h (1138B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _XEN_SMP_H
      3
      4#ifdef CONFIG_SMP
      5extern void xen_send_IPI_mask(const struct cpumask *mask,
      6			      int vector);
      7extern void xen_send_IPI_mask_allbutself(const struct cpumask *mask,
      8				int vector);
      9extern void xen_send_IPI_allbutself(int vector);
     10extern void xen_send_IPI_all(int vector);
     11extern void xen_send_IPI_self(int vector);
     12
     13extern int xen_smp_intr_init(unsigned int cpu);
     14extern void xen_smp_intr_free(unsigned int cpu);
     15int xen_smp_intr_init_pv(unsigned int cpu);
     16void xen_smp_intr_free_pv(unsigned int cpu);
     17
     18void xen_smp_cpus_done(unsigned int max_cpus);
     19
     20void xen_smp_send_reschedule(int cpu);
     21void xen_smp_send_call_function_ipi(const struct cpumask *mask);
     22void xen_smp_send_call_function_single_ipi(int cpu);
     23
     24struct xen_common_irq {
     25	int irq;
     26	char *name;
     27};
     28#else /* CONFIG_SMP */
     29
     30static inline int xen_smp_intr_init(unsigned int cpu)
     31{
     32	return 0;
     33}
     34static inline void xen_smp_intr_free(unsigned int cpu) {}
     35
     36static inline int xen_smp_intr_init_pv(unsigned int cpu)
     37{
     38	return 0;
     39}
     40static inline void xen_smp_intr_free_pv(unsigned int cpu) {}
     41#endif /* CONFIG_SMP */
     42
     43#endif