1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Per-cpu current frame pointer - the location of the last exception frame on 4 * the stack, stored in the per-cpu area. 5 * 6 * Jeremy Fitzhardinge <jeremy@goop.org> 7 */ 8 #ifndef _ASM_X86_IRQ_REGS_H 9 #define _ASM_X86_IRQ_REGS_H 10 11 #include <asm/percpu.h> 12 13 #define ARCH_HAS_OWN_IRQ_REGS 14 15 DECLARE_PER_CPU(struct pt_regs *, irq_regs); 16 get_irq_regs(void)17static inline struct pt_regs *get_irq_regs(void) 18 { 19 return this_cpu_read(irq_regs); 20 } 21 set_irq_regs(struct pt_regs * new_regs)22static inline struct pt_regs *set_irq_regs(struct pt_regs *new_regs) 23 { 24 struct pt_regs *old_regs; 25 26 old_regs = get_irq_regs(); 27 this_cpu_write(irq_regs, new_regs); 28 29 return old_regs; 30 } 31 32 #endif /* _ASM_X86_IRQ_REGS_32_H */ 33