What is the objection to this?
> and just getting rid of the current "unconditionally set state to
> running".
>
> (Side note: if the state isn't running, we're most likely going to
> reschedule in a controlled manner soon anyway. Sure, there are some loops
> which set state to non-runnable early for race avoidance, but is it a
> _problem_?)
>
All I can say is that we thought it was when we did the original
preemption work. Some of those loops are long.
I tend to agree with not doing the random "set state to running". It
breeds paranoia, and rightly so.
And yes the ZOMBIE code must not be preempted. This is one of the
reasons the preempt code was designed to allow schedule() to be called
with preemption disabled. I gives a nice clean schedule() call. It
might be a better solution than the interrupt off schedule() calls made
in the sleep calls in sched.c.
> Linus
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
-- George Anzinger george@mvista.com High-res-timers: http://sourceforge.net/projects/high-res-timers/ Real time sched: http://sourceforge.net/projects/rtsched/ Preemption patch: http://www.kernel.org/pub/linux/kernel/people/rml - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/