Messages in this thread | | | Subject | Re: [PATCH] s390 (9/9): no timer interrupts in idle. | From | Martin Schwidefsky <> | Date | Thu, 22 Apr 2004 10:55:24 +0200 |
| |
> Defining idle_cpu_mask in the middle of RCU code is really not a good idea. > A cleaner solution would be to define idle_cpu_mask in sched.c > and initialize it to CPU_MASK_NONE there. You could put it in > sched.h, but then there is the likelyhood of people using > idle_cpu_mask for things other than initialization in which > case NR_CPUS > 64 compilation will fail.
Yes, the best solution would be to introduce idle_cpu_mask for all architectures and to add the cpu_set/cpu_clear calls to the timer code of these architectures. The problem is that it isn't easy to find the correct place for the cpu_clear call. If a cpu gets woken by an irq the cpu_clear has to be done first and then the irq function may be executed. On s390 we use the monitor call (mc) instruction to reenable to HZ timer and to clear the cpu bit in idle_cpu_mask. Dunno if there is something similar for other architectures.
blue skies, Martin
- 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/
| |