Merge remote-tracking branch 'irqchip/irqchip/for-next'
[deliverable/linux.git] / include / linux / bottom_half.h
CommitLineData
676dcb8b
AM
1#ifndef _LINUX_BH_H
2#define _LINUX_BH_H
3
0bd3a173 4#include <linux/preempt.h>
0bd3a173
PZ
5
6#ifdef CONFIG_TRACE_IRQFLAGS
7extern void __local_bh_disable_ip(unsigned long ip, unsigned int cnt);
8#else
9static __always_inline void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
10{
11 preempt_count_add(cnt);
12 barrier();
13}
14#endif
15
16static inline void local_bh_disable(void)
17{
18 __local_bh_disable_ip(_THIS_IP_, SOFTIRQ_DISABLE_OFFSET);
19}
20
676dcb8b 21extern void _local_bh_enable(void);
0bd3a173
PZ
22extern void __local_bh_enable_ip(unsigned long ip, unsigned int cnt);
23
24static inline void local_bh_enable_ip(unsigned long ip)
25{
26 __local_bh_enable_ip(ip, SOFTIRQ_DISABLE_OFFSET);
27}
28
29static inline void local_bh_enable(void)
30{
31 __local_bh_enable_ip(_THIS_IP_, SOFTIRQ_DISABLE_OFFSET);
32}
676dcb8b
AM
33
34#endif /* _LINUX_BH_H */
This page took 0.836309 seconds and 5 git commands to generate.