From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752243AbbKJAWW (ORCPT ); Mon, 9 Nov 2015 19:22:22 -0500 Received: from mga03.intel.com ([134.134.136.65]:14126 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751628AbbKJAWU (ORCPT ); Mon, 9 Nov 2015 19:22:20 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.20,267,1444719600"; d="scan'208";a="681783619" From: Jacob Pan To: Peter Zijlstra , LKML Cc: Rafael Wysocki , Len Brown , Andi Kleen , Thomas Gleixner , Paul Turner , Tim Chen , Dietmar Eggemann , Eduardo Valentin , Punit Agrawal , Srinivas Pandruvada , Jacob Pan Subject: [RFC PATCH v2 2/3] timer: relax tick stop in idle entry Date: Mon, 9 Nov 2015 16:21:22 -0800 Message-Id: <1447114883-23851-3-git-send-email-jacob.jun.pan@linux.intel.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1447114883-23851-1-git-send-email-jacob.jun.pan@linux.intel.com> References: <1447114883-23851-1-git-send-email-jacob.jun.pan@linux.intel.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Upon entering idle, we can turn off tick if the next timeout is exactly one tick away. Otherwise, we could enter inner idle loop with tick still enabled, without resched set, the tick will continue during idle therefore less optimal in terms of energy savings. Signed-off-by: Jacob Pan --- kernel/time/tick-sched.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c index 7c7ec45..bcadaab 100644 --- a/kernel/time/tick-sched.c +++ b/kernel/time/tick-sched.c @@ -606,7 +606,7 @@ static ktime_t tick_nohz_stop_sched_tick(struct tick_sched *ts, * restart it proper. */ delta = next_tick - basemono; - if (delta <= (u64)TICK_NSEC) { + if (delta < (u64)TICK_NSEC) { tick.tv64 = 0; if (!ts->tick_stopped) goto out; -- 1.9.1