Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4da1ce6d authored by Ingo Molnar's avatar Ingo Molnar
Browse files

sched: add in_atomic_preempt_off()



add in_atomic_preempt_off() - debugging helper that will
simplify schedule().

Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent f64f6114
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -78,6 +78,19 @@
# define in_atomic()	((preempt_count() & ~PREEMPT_ACTIVE) != 0)
#endif

#ifdef CONFIG_PREEMPT
# define PREEMPT_CHECK_OFFSET 1
#else
# define PREEMPT_CHECK_OFFSET 0
#endif

/*
 * Check whether we were atomic before we did preempt_disable():
 * (used by the scheduler)
 */
#define in_atomic_preempt_off() \
		((preempt_count() & ~PREEMPT_ACTIVE) != PREEMPT_CHECK_OFFSET)

#ifdef CONFIG_PREEMPT
# define preemptible()	(preempt_count() == 0 && !irqs_disabled())
# define IRQ_EXIT_OFFSET (HARDIRQ_OFFSET-1)