4 #include <linux/preempt.h>
6 #ifdef CONFIG_PREEMPT_RT_FULL
8 extern void __local_bh_disable(void);
9 extern void _local_bh_enable(void);
10 extern void __local_bh_enable(void);
12 static inline void local_bh_disable(void)
17 static inline void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
22 static inline void local_bh_enable(void)
27 static inline void __local_bh_enable_ip(unsigned long ip, unsigned int cnt)
32 static inline void local_bh_enable_ip(unsigned long ip)
39 #ifdef CONFIG_TRACE_IRQFLAGS
40 extern void __local_bh_disable_ip(unsigned long ip, unsigned int cnt);
42 static __always_inline void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
44 preempt_count_add(cnt);
49 static inline void local_bh_disable(void)
51 __local_bh_disable_ip(_THIS_IP_, SOFTIRQ_DISABLE_OFFSET);
54 extern void _local_bh_enable(void);
55 extern void __local_bh_enable_ip(unsigned long ip, unsigned int cnt);
57 static inline void local_bh_enable_ip(unsigned long ip)
59 __local_bh_enable_ip(ip, SOFTIRQ_DISABLE_OFFSET);
62 static inline void local_bh_enable(void)
64 __local_bh_enable_ip(_THIS_IP_, SOFTIRQ_DISABLE_OFFSET);
68 #endif /* _LINUX_BH_H */