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 218320 : 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 423654 : um_set_signals(flags); 20 0 : } 21 : 22 : #define arch_local_irq_enable arch_local_irq_enable 23 752 : static inline void arch_local_irq_enable(void) 24 : { 25 10564 : unblock_signals(); 26 752 : } 27 : 28 : #define arch_local_irq_disable arch_local_irq_disable 29 752 : static inline void arch_local_irq_disable(void) 30 : { 31 10564 : block_signals(); 32 752 : } 33 : 34 : #define ARCH_IRQ_DISABLED 0 35 : 36 : #include <asm-generic/irqflags.h> 37 : 38 : #endif