Re: AVR32 architecture patch against Linux 2.6.18-rc1 available

From: Haavard Skinnemoen
Date: Fri Jul 07 2006 - 12:34:47 EST


On Fri, 07 Jul 2006 18:08:48 +1000
Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:

> need_resched() translates to a test_bit, which doesn't have any
> barriers, so it could be optimised away completely. And if you're
> intending to use preempt, you need to have preemption disabled in the
> idle loop.

Actually, preemption seems to be disabled when entering cpu_idle(), but
it must be enabled around the call to schedule(). That explains the
"scheduling while atomic" storm we saw when enabling CONFIG_PREEMPT
anyway.

CONFIG_PREEMPT support is one of the things still missing, btw. I'll
implement that next, now that genirq seems to be working.

> Documentation/sched-arch.txt attempts to explain, and something like
> arm26's cpu_idle() is a nice, simple example to follow.

I'll do that. Thanks.

HÃvard
-
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/