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

irq.h (1280B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _ASM_X86_IRQ_H
      3#define _ASM_X86_IRQ_H
      4/*
      5 *	(C) 1992, 1993 Linus Torvalds, (C) 1997 Ingo Molnar
      6 *
      7 *	IRQ/IPI changes taken from work by Thomas Radke
      8 *	<tomsoft@informatik.tu-chemnitz.de>
      9 */
     10
     11#include <asm/apicdef.h>
     12#include <asm/irq_vectors.h>
     13
     14/*
     15 * The irq entry code is in the noinstr section and the start/end of
     16 * __irqentry_text is emitted via labels. Make the build fail if
     17 * something moves a C function into the __irq_entry section.
     18 */
     19#define __irq_entry __invalid_section
     20
     21static inline int irq_canonicalize(int irq)
     22{
     23	return ((irq == 2) ? 9 : irq);
     24}
     25
     26extern int irq_init_percpu_irqstack(unsigned int cpu);
     27
     28struct irq_desc;
     29
     30extern void fixup_irqs(void);
     31
     32#ifdef CONFIG_HAVE_KVM
     33extern void kvm_set_posted_intr_wakeup_handler(void (*handler)(void));
     34#endif
     35
     36extern void (*x86_platform_ipi_callback)(void);
     37extern void native_init_IRQ(void);
     38
     39extern void __handle_irq(struct irq_desc *desc, struct pt_regs *regs);
     40
     41extern void init_ISA_irqs(void);
     42
     43extern void __init init_IRQ(void);
     44
     45#ifdef CONFIG_X86_LOCAL_APIC
     46void arch_trigger_cpumask_backtrace(const struct cpumask *mask,
     47				    bool exclude_self);
     48
     49#define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
     50#endif
     51
     52#endif /* _ASM_X86_IRQ_H */