10.08.2014, 19:31, "Oleg Nesterov" <o...@redhat.com>: > On 08/09, Peter Zijlstra wrote: >> That would suggest we're failing to do the TASK_DEAD thing properly, and >> ARGH! bloody obvious why, see the this_rq() comment right before the >> finish_task_switch() call in context_switch(). > > Off-topic, but perhaps we can make this a bit more clear? > > Hmm. But after I actually did this change I can't understand if it makes > this more clean or uglifies the code. See the patch below. > > OTOH, "int cpu" in __schedule() looks pointless and should die? Both > rcu_note_context_switch() and wq_worker_sleeping() can use > raw_smp_processor_id() ? In fact I think wq_worker_sleeping() doesn't > need the "task" argument too. > > And... Doesn't schedule_tail() need preempt_enable() before > finish_task_switch() ? IOW, shouldn't it do > > #ifndef __ARCH_WANT_UNLOCKED_CTXSW > preempt_disable(); > #endif > finish_task_switch(); > post_schedule(rq); > > preempt_enable(); > > or I am totally confused?
You're sure, this was discussed here: https://lkml.org/lkml/2014/2/14/243 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/