Line data Source code
1 : /* SPDX-License-Identifier: GPL-2.0 */ 2 : #ifndef __UM_IRQFLAGS_H 3 : #define __UM_IRQFLAGS_H 4 : 5 : extern int signals_enabled; 6 : int um_set_signals(int enable); 7 : void block_signals(void); 8 : void unblock_signals(void); 9 : 10 : #define arch_local_save_flags arch_local_save_flags 11 : static inline unsigned long arch_local_save_flags(void) 12 : { 13 246527 : return signals_enabled; 14 : } 15 : 16 : #define arch_local_irq_restore arch_local_irq_restore 17 0 : static inline void arch_local_irq_restore(unsigned long flags) 18 : { 19 481032 : um_set_signals(flags); 20 0 : } 21 : 22 : #define arch_local_irq_enable arch_local_irq_enable 23 668 : static inline void arch_local_irq_enable(void) 24 : { 25 9313 : unblock_signals(); 26 668 : } 27 : 28 : #define arch_local_irq_disable arch_local_irq_disable 29 668 : static inline void arch_local_irq_disable(void) 30 : { 31 9313 : block_signals(); 32 668 : } 33 : 34 : #define ARCH_IRQ_DISABLED 0 35 : 36 : #include <asm-generic/irqflags.h> 37 : 38 : #endif