From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1946170AbbDXP7S (ORCPT ); Fri, 24 Apr 2015 11:59:18 -0400 Received: from mail-wg0-f45.google.com ([74.125.82.45]:34541 "EHLO mail-wg0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1946111AbbDXP6p (ORCPT ); Fri, 24 Apr 2015 11:58:45 -0400 From: Frederic Weisbecker To: LKML Cc: Chris Metcalf , "Rafael J . Wysocki" , Peter Zijlstra , Mike Galbraith , Ingo Molnar , Dave Jones , Thomas Gleixner , Oleg Nesterov , "Paul E . McKenney" , Ingo Molnar , Frederic Weisbecker , Rik van Riel , Martin Schwidefsky Subject: [PATCH 4/4] nohz: Set isolcpus when nohz_full is set Date: Fri, 24 Apr 2015 17:58:31 +0200 Message-Id: <1429891111-30855-5-git-send-email-fweisbec@gmail.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1429891111-30855-1-git-send-email-fweisbec@gmail.com> References: <1429891111-30855-1-git-send-email-fweisbec@gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Chris Metcalf nohz_full is only useful with isolcpus also set, since otherwise the scheduler has to run periodically to try to determine whether to steal work from other cores. Accordingly, when booting with nohz_full=xxx on the command line, we should act as if isolcpus=xxx was also set, and set (or extend) the isolcpus set to include the nohz_full cpus. Acked-by: Mike Galbraith ["thumbs up!"] Acked-by: Rik van Riel Acked-by: Peter Zijlstra (Intel) Signed-off-by: Chris Metcalf Cc: Peter Zijlstra (Intel) Cc: Paul E. McKenney Cc: Rafael J. Wysocki Cc: Martin Schwidefsky Cc: Mike Galbraith Cc: Ingo Molnar Cc: Rik van Riel Signed-off-by: Frederic Weisbecker --- kernel/sched/core.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 6f149f8..e95b4d8 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -7042,6 +7042,9 @@ void __init sched_init_smp(void) alloc_cpumask_var(&non_isolated_cpus, GFP_KERNEL); alloc_cpumask_var(&fallback_doms, GFP_KERNEL); + /* nohz_full won't take effect without isolating the cpus. */ + tick_nohz_full_add_cpus_to(cpu_isolated_map); + sched_init_numa(); /* -- 2.1.4