| Date | Tue, 29 Sep 2015 11:42:27 -0400 | From | Steven Rostedt <> | Subject | Re: [RFC][PATCH 08/11] sched: Simplify preempt_count tests |
| |
On Tue, 29 Sep 2015 11:28:33 +0200 Peter Zijlstra <peterz@infradead.org> wrote:
> Since we stopped setting PREEMPT_ACTIVE, there is no need to mask it > out of preempt_count() tests. > > Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> > ---
Reviewed-by: Steven Rostedt <rostedt@goodmis.org>
-- Steve
> include/linux/preempt.h | 3 +-- > kernel/sched/core.c | 2 +- > 2 files changed, 2 insertions(+), 3 deletions(-) > > --- a/include/linux/preempt.h > +++ b/include/linux/preempt.h > @@ -126,8 +126,7 @@ > * Check whether we were atomic before we did preempt_disable(): > * (used by the scheduler) > */ > -#define in_atomic_preempt_off() \ > - ((preempt_count() & ~PREEMPT_ACTIVE) != PREEMPT_DISABLE_OFFSET) > +#define in_atomic_preempt_off() (preempt_count() != PREEMPT_DISABLE_OFFSET) > > #if defined(CONFIG_DEBUG_PREEMPT) || defined(CONFIG_PREEMPT_TRACER) > extern void preempt_count_add(int val); > --- a/kernel/sched/core.c > +++ b/kernel/sched/core.c > @@ -7472,7 +7472,7 @@ void __init sched_init(void) > #ifdef CONFIG_DEBUG_ATOMIC_SLEEP > static inline int preempt_count_equals(int preempt_offset) > { > - int nested = (preempt_count() & ~PREEMPT_ACTIVE) + rcu_preempt_depth(); > + int nested = preempt_count() + rcu_preempt_depth(); > > return (nested == preempt_offset); > } >
|