Re: [PATCH 1/1] sched: make finish_task_switch() return struct rq *

From: Oleg Nesterov
Date: Fri Oct 10 2014 - 13:10:14 EST


On 10/10, Peter Zijlstra wrote:
>
> On Thu, Oct 09, 2014 at 09:32:32PM +0200, Oleg Nesterov wrote:
> > @@ -2802,15 +2802,8 @@ need_resched:
> > rq->curr = next;
> > ++*switch_count;
> >
> > - context_switch(rq, prev, next); /* unlocks the rq */
> > - /*
> > - * The context switch have flipped the stack from under us
> > - * and restored the local variables which were saved when
> > - * this task called schedule() in the past. prev == current
> > - * is still correct, but it can be moved to another cpu/rq.
> > - */
> > - cpu = smp_processor_id();
> > - rq = cpu_rq(cpu);
> > + rq = context_switch(rq, prev, next); /* unlocks the rq */
> > + cpu = rq->cpu;
>
> This won't compile on UP, cpu_of(rq) works though.

Heh ;) and I swear I was going to write cpu_of().

and I agree with BUG_ON() in __trace_sched_switch() if CONFIG_SCHED_DEBUG.

I am travelling till next Wednesday, will resend everything once I return.

Thanks a lot!

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/