On Thu, 2003-07-31 at 15:45, Roger Larsson wrote:
> This smells preemptive kernel, correct?
Doesn't look like anything specific to kernel preemption to me.
But if need_resched() is never zero, the while loop fails, and
schedule() _should_ be reached. So something is fishy here. Looking at
it the other way, however, if schedule() is never called, then
need_resched() will remain non-zero forever. Maybe you mean
need_resched() is never non-zero, i.e., it is always zero?
I think the problem is that there is a race between whatever you are
saying ACPI is doing with pm_idle and the setting of idle. Actually,
that is exactly what you are saying :)
Your fix smells exactly of that. Maybe have APCI set need_resched, so
the loop flips over again?
Robert Love
-
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/
This archive was generated by hypermail 2b29 : Thu Jul 31 2003 - 22:00:52 EST