On 9/7/05, Bill Davidsen <[EMAIL PROTECTED]> wrote: > Srivatsa Vaddagiri wrote: > > On Sun, Sep 04, 2005 at 10:48:13PM -0700, Nishanth Aravamudan wrote: > > > >>Admittedly, I don't think SMP ARM has been around all that long? Maybe > >>the existing code just has not been extended. > > > > > > Yeah, maybe ARM never cared for SMP. But we do care :) > > > > > >>I'm not sure on this. It's going to be NULL for other architectures, or > >>end up being called by the reprogram() call for the last CPU to go idle, > >>right (presuming there isn't a separate TOD source, like in x86). I > >>think it is better to be in the reprogram() interface. > > > > > > Non-x86 could have it set to NULL, in which case it doesn't get called. > > (I know the current code does not take care of this situation). > > But having an explicit 'all_cpus_idle' interface may be good, since > > Tony talked of idling some devices when all CPUs are idle. So it > > probably has non-x86/PIT uses too. > > If this is intended to reduce power, and it originally came from that > root, then this is the time to put in a hook for transitions to<=>from > the all-idle state. Various arch may have things other than the PIT > which should (or at least can) be stopped, and which need to be restarted.
Hrm, got dropped from the Cc... :) Yes, the dynamic-tick generic infrastructure being proposed, with the idle CPU mask and the set_all_cpus_idle() tick_source hook, would allow exactly this in arch-specific code. Is there a generic location where the all-idle state is entered? Currently, I think we can do it via the generic reprogram() routine checking the mask and then calling set_all_cpus_idle(), if appropriate, after reprogramming the last idle CPU. Thanks, Nish - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/