aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-08-04 19:37:59 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2016-08-04 19:37:59 -0400
commit9e0243db6169d7d1fc39a087e78fed22a2fe7071 (patch)
tree867da284894bc179e0d6f4df062e293fa5dfe85b /arch/um/include
parentb067c9045af4791a5836042f743d12477131f7b5 (diff)
parent8a545f185145e3c09348cd74326268ecfc6715a3 (diff)
Merge branch 'for-linus-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml
Pull UML updates from Richard Weinberger: "Beside of various fixes this also contains patches to enable features such was Kcov, kmemleak and TRACE_IRQFLAGS_SUPPORT on UML" * 'for-linus-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml: hostfs: Freeing an ERR_PTR in hostfs_fill_sb_common() um: Support kcov um: Enable TRACE_IRQFLAGS_SUPPORT um: Use asm-generic/irqflags.h um: Fix possible deadlock in sig_handler_common() um: Select HAVE_DEBUG_KMEMLEAK um: Setup physical memory in setup_arch() um: Eliminate null test after alloc_bootmem
Diffstat (limited to 'arch/um/include')
-rw-r--r--arch/um/include/asm/irqflags.h18
1 files changed, 7 insertions, 11 deletions
diff --git a/arch/um/include/asm/irqflags.h b/arch/um/include/asm/irqflags.h
index c780d8a16773..3bb221e1d5a4 100644
--- a/arch/um/include/asm/irqflags.h
+++ b/arch/um/include/asm/irqflags.h
@@ -6,37 +6,33 @@ extern int set_signals(int enable);
6extern void block_signals(void); 6extern void block_signals(void);
7extern void unblock_signals(void); 7extern void unblock_signals(void);
8 8
9#define arch_local_save_flags arch_local_save_flags
9static inline unsigned long arch_local_save_flags(void) 10static inline unsigned long arch_local_save_flags(void)
10{ 11{
11 return get_signals(); 12 return get_signals();
12} 13}
13 14
15#define arch_local_irq_restore arch_local_irq_restore
14static inline void arch_local_irq_restore(unsigned long flags) 16static inline void arch_local_irq_restore(unsigned long flags)
15{ 17{
16 set_signals(flags); 18 set_signals(flags);
17} 19}
18 20
21#define arch_local_irq_enable arch_local_irq_enable
19static inline void arch_local_irq_enable(void) 22static inline void arch_local_irq_enable(void)
20{ 23{
21 unblock_signals(); 24 unblock_signals();
22} 25}
23 26
27#define arch_local_irq_disable arch_local_irq_disable
24static inline void arch_local_irq_disable(void) 28static inline void arch_local_irq_disable(void)
25{ 29{
26 block_signals(); 30 block_signals();
27} 31}
28 32
29static inline unsigned long arch_local_irq_save(void) 33#define ARCH_IRQ_DISABLED 0
30{ 34#define ARCh_IRQ_ENABLED (SIGIO|SIGVTALRM)
31 unsigned long flags;
32 flags = arch_local_save_flags();
33 arch_local_irq_disable();
34 return flags;
35}
36 35
37static inline bool arch_irqs_disabled(void) 36#include <asm-generic/irqflags.h>
38{
39 return arch_local_save_flags() == 0;
40}
41 37
42#endif 38#endif