> [...] How can this in_atomic() test _ever_ catch a preemption bug? We
> cannot enter the scheduler off kernel preemption unless
> preempt_count==0. This is a test to catch bugs in other parts of the
> kernel, e.g. where code explicitly calls schedule() while holding a
> lock.
you are right, i was confusing this with the older check for disabled
interrupt in preempt_schedule() [which i'd still find useful].
The smp_processor_id() test catches true preemption bugs. So does
preempt_count() underflow detection.
i do agree with Alan - there can be nothing bad in trying to fix all that
non-preempt-aware code right now, before it becomes too late.
Ingo
-
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/