[Devel] [PATCH rh7 1/4] linux/preempt_mask.h: Add in_task() macro.
Andrey Ryabinin
aryabinin at virtuozzo.com
Fri Aug 17 19:40:22 MSK 2018
in_task() returns true if we are executing in the task context.
Implementation has been stolen from upstream.
https://jira.sw.ru/browse/PSBM-87797
Signed-off-by: Andrey Ryabinin <aryabinin at virtuozzo.com>
---
include/linux/preempt_mask.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/linux/preempt_mask.h b/include/linux/preempt_mask.h
index a492ae8e6f10..5eb3970311dc 100644
--- a/include/linux/preempt_mask.h
+++ b/include/linux/preempt_mask.h
@@ -88,6 +88,8 @@
#define in_softirq() (softirq_count())
#define in_interrupt() (irq_count())
#define in_serving_softirq() (softirq_count() & SOFTIRQ_OFFSET)
+#define in_task() (!(preempt_count() & \
+ (NMI_MASK | HARDIRQ_MASK | SOFTIRQ_OFFSET)))
/*
* Are we in NMI context?
--
2.16.4
More information about the Devel
mailing list