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_regs.h (773B)


      1/* SPDX-License-Identifier: GPL-2.0-or-later */
      2/* Fallback per-CPU frame pointer holder
      3 *
      4 * Copyright (C) 2006 Red Hat, Inc. All Rights Reserved.
      5 * Written by David Howells (dhowells@redhat.com)
      6 */
      7
      8#ifndef _ASM_GENERIC_IRQ_REGS_H
      9#define _ASM_GENERIC_IRQ_REGS_H
     10
     11#include <linux/percpu.h>
     12
     13/*
     14 * Per-cpu current frame pointer - the location of the last exception frame on
     15 * the stack
     16 */
     17DECLARE_PER_CPU(struct pt_regs *, __irq_regs);
     18
     19static inline struct pt_regs *get_irq_regs(void)
     20{
     21	return __this_cpu_read(__irq_regs);
     22}
     23
     24static inline struct pt_regs *set_irq_regs(struct pt_regs *new_regs)
     25{
     26	struct pt_regs *old_regs;
     27
     28	old_regs = __this_cpu_read(__irq_regs);
     29	__this_cpu_write(__irq_regs, new_regs);
     30	return old_regs;
     31}
     32
     33#endif /* _ASM_GENERIC_IRQ_REGS_H */