On 2014/10/28 16:25, Peter Zijlstra wrote: > On Tue, Oct 28, 2014 at 03:52:17PM +0800, Li, Aubrey wrote: > >> Both clocksource and clockevents are not per-cpu device, why do we need >> to run their suspend callback on *each* cpu? > > Uhm, you mean to say we don't use per-cpu timer lists and per-cpu timer > hardware for clockevents then? >
>From OS level, currently tick device is per-cpu implementation while clocksource and clockevent devices are global device. We already stop tick by clockevents_notify(suspend) on each cpu, that addresses per-cpu timer list. And, we already call clocksource_suspend() and clockevents_suspend() in timekeeping_suspend() on the tick timer CPU. Yes, we didn't suspend per-cpu timer hardware on x86 because x86 does not have lapic timer suspend implementation. If we need to implement this, I think we can do the cross-CPU calls in clocksource/clockevents suspend(), but I didn't see any necessary we need to do this now. so, I think we are okay now, :) Thanks, -Aubrey -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/