On Wed, Jan 22, 2014 at 10:07 PM, Thomas Gleixner <t...@linutronix.de> wrote: > On Wed, 22 Jan 2014, Lei Wen wrote: >> Recently I want to do the experiment for cpu isolation over 3.10 kernel. >> But I find the isolated one is periodically waken up by IPI interrupt. >> >> By checking the trace, I find those IPI is generated by add_timer_on, >> which would calls wake_up_nohz_cpu, and wake up the already idle cpu. >> >> With further checking, I find this timer is added by on_demand governor of >> cpufreq. It would periodically check each cores' state. >> The problem I see here is cpufreq_governor using INIT_DEFERRABLE_WORK >> as the tool, while timer is made as deferrable anyway. >> And what is more that cpufreq checking is very frequent. In my case, the >> isolated cpu is wakenup by IPI every 5ms. >> >> So why kernel need to wake the remote processor when mount the deferrable >> timer? As per my understanding, we'd better keep cpu as idle when use >> the deferrable timer. > > Indeed, we can avoid the wakeup of the remote cpu when the timer is > deferrable.
Glad to hear that we could fix this unwanted wakeup. Do you have related patches already? > > Though you really want to figure out why the cpufreq governor is > arming timers on other cores every 5ms. That smells like an utterly > stupid approach. Not sure why cpufreq choose such frequent profiling over each cpu. As my understanding, since kernel is smp, launching profiler over one cpu would be enough... Thanks, Lei -- 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/