Branch data Line data Source code
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 : : 17 : 76431 : static inline struct pt_regs *get_irq_regs(void) 18 : : { 19 [ + + # # ]: 76431 : return __this_cpu_read(irq_regs); 20 : : } 21 : : 22 : 46716 : static inline struct pt_regs *set_irq_regs(struct pt_regs *new_regs) 23 : : { 24 : 46716 : struct pt_regs *old_regs; 25 : : 26 : 23358 : old_regs = get_irq_regs(); 27 : 46716 : __this_cpu_write(irq_regs, new_regs); 28 : : 29 : 23358 : return old_regs; 30 : : } 31 : : 32 : : #endif /* _ASM_X86_IRQ_REGS_32_H */