--
On Fri, 12 Oct 2007, Gregory Haskins wrote: > A little cleanup to avoid #ifdef proliferation later in the series > > Signed-off-by: Gregory Haskins <[EMAIL PROTECTED]> NACK > --- > > kernel/sched.c | 23 ++++++++++++++++++++--- > 1 files changed, 20 insertions(+), 3 deletions(-) > > diff --git a/kernel/sched.c b/kernel/sched.c > index 0a1ad0e..c9afc8a 100644 > --- a/kernel/sched.c > +++ b/kernel/sched.c > @@ -255,6 +255,10 @@ struct cfs_rq { > #endif > }; > > +#if defined(CONFIG_PREEMPT_RT) && defined(CONFIG_SMP) > +#define ENABLE_RQ_PRIORITY /* Steve wants this conditional on PREEMPT_RT > */ Yes, I do want it conditional. But only because we want to test it first, so the condition is really temporary. I agree with Peter that this should be for non PREEMPT_RT as well, and I'll work on a patch for upstream. But these defines setting defines is just ugly. -- Steve > +#endif /* CONFIG_PREEMPT_RT */ > + > /* Real-Time classes' related field in a runqueue: */ > struct rt_rq { > struct rt_prio_array active; > @@ -304,6 +308,9 @@ struct rq { > #ifdef CONFIG_PREEMPT_RT > unsigned long rt_nr_running; > unsigned long rt_nr_uninterruptible; > +#endif > + > +#ifdef ENABLE_RQ_PRIORITY > int curr_prio; > #endif > > @@ -365,6 +372,16 @@ struct rq { > static DEFINE_PER_CPU_SHARED_ALIGNED(struct rq, runqueues); > static DEFINE_MUTEX(sched_hotcpu_mutex); > > +#ifdef ENABLE_RQ_PRIORITY > +static inline void set_rq_prio(struct rq *rq, int prio) > +{ > + rq->curr_prio = prio; > +} > + > +#else > +#define set_rq_prio(rq, prio) do { } while(0) > +#endif > + > static inline void check_preempt_curr(struct rq *rq, struct task_struct *p) > { > rq->curr->sched_class->check_preempt_curr(rq, p); > @@ -2331,9 +2348,9 @@ static inline void finish_task_switch(struct rq *rq, > struct task_struct *prev) > */ > prev_state = prev->state; > _finish_arch_switch(prev); > -#if defined(CONFIG_PREEMPT_RT) && defined(CONFIG_SMP) > - rq->curr_prio = current->prio; > -#endif > + > + set_rq_prio(rq, current->prio); > + > finish_lock_switch(rq, prev); > #if defined(CONFIG_PREEMPT_RT) && defined(CONFIG_SMP) > /* > > > - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/