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

hardirq.h (948B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _ASM_POWERPC_HARDIRQ_H
      3#define _ASM_POWERPC_HARDIRQ_H
      4
      5#include <linux/threads.h>
      6#include <linux/irq.h>
      7
      8typedef struct {
      9	unsigned int __softirq_pending;
     10	unsigned int timer_irqs_event;
     11	unsigned int broadcast_irqs_event;
     12	unsigned int timer_irqs_others;
     13	unsigned int pmu_irqs;
     14	unsigned int mce_exceptions;
     15	unsigned int spurious_irqs;
     16	unsigned int sreset_irqs;
     17#ifdef CONFIG_PPC_WATCHDOG
     18	unsigned int soft_nmi_irqs;
     19#endif
     20#ifdef CONFIG_PPC_DOORBELL
     21	unsigned int doorbell_irqs;
     22#endif
     23} ____cacheline_aligned irq_cpustat_t;
     24
     25DECLARE_PER_CPU_SHARED_ALIGNED(irq_cpustat_t, irq_stat);
     26
     27#define __ARCH_IRQ_STAT
     28#define __ARCH_IRQ_EXIT_IRQS_DISABLED
     29
     30static inline void ack_bad_irq(unsigned int irq)
     31{
     32	printk(KERN_CRIT "unexpected IRQ trap at vector %02x\n", irq);
     33}
     34
     35extern u64 arch_irq_stat_cpu(unsigned int cpu);
     36#define arch_irq_stat_cpu	arch_irq_stat_cpu
     37
     38#endif /* _ASM_POWERPC_HARDIRQ_H */