From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934201AbcIUNkE (ORCPT ); Wed, 21 Sep 2016 09:40:04 -0400 Received: from mail-wm0-f52.google.com ([74.125.82.52]:38703 "EHLO mail-wm0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753564AbcIUNiR (ORCPT ); Wed, 21 Sep 2016 09:38:17 -0400 From: Matt Fleming To: Peter Zijlstra , Ingo Molnar Cc: Byungchul Park , Frederic Weisbecker , Luca Abeni , Rik van Riel , Thomas Gleixner , Wanpeng Li , Yuyang Du , Petr Mladek , Jan Kara , Sergey Senozhatsky , linux-kernel@vger.kernel.org, Mel Gorman , Mike Galbraith , Matt Fleming Subject: [PATCH v2 1/7] sched/fair: Update the rq clock before detaching tasks Date: Wed, 21 Sep 2016 14:38:07 +0100 Message-Id: <20160921133813.31976-2-matt@codeblueprint.co.uk> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20160921133813.31976-1-matt@codeblueprint.co.uk> References: <20160921133813.31976-1-matt@codeblueprint.co.uk> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org detach_task_cfs_rq() may indirectly call rq_clock() to inform the cpufreq code that the rq utilisation has changed. In which case, we need to update the rq clock. Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Mel Gorman Cc: Mike Galbraith Signed-off-by: Matt Fleming --- kernel/sched/fair.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 986c10c25176..ab1cf3866a5b 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -8484,7 +8484,10 @@ static void detach_task_cfs_rq(struct task_struct *p) { struct sched_entity *se = &p->se; struct cfs_rq *cfs_rq = cfs_rq_of(se); - u64 now = cfs_rq_clock_task(cfs_rq); + u64 now; + + update_rq_clock(task_rq(p)); + now = cfs_rq_clock_task(cfs_rq); if (!vruntime_normalized(p)) { /* -- 2.9.3