Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751245AbaAWFlX (ORCPT ); Thu, 23 Jan 2014 00:41:23 -0500 Received: from mail-vb0-f43.google.com ([209.85.212.43]:49359 "EHLO mail-vb0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751108AbaAWFlV (ORCPT ); Thu, 23 Jan 2014 00:41:21 -0500 MIME-Version: 1.0 In-Reply-To: References: Date: Thu, 23 Jan 2014 13:41:20 +0800 Message-ID: Subject: Re: Is it ok for deferrable timer wakeup the idle cpu? From: Lei Wen To: Thomas Gleixner Cc: LKML , Viresh Kumar , Frederic Weisbecker , "Rafael J. Wysocki" Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jan 22, 2014 at 10:07 PM, Thomas Gleixner 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 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/