From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754830AbeASACl (ORCPT ); Thu, 18 Jan 2018 19:02:41 -0500 Received: from mail.kernel.org ([198.145.29.99]:39030 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932683AbeASACc (ORCPT ); Thu, 18 Jan 2018 19:02:32 -0500 DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0141921719 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=frederic@kernel.org From: Frederic Weisbecker To: Ingo Molnar Cc: LKML , Frederic Weisbecker , Peter Zijlstra , Chris Metcalf , Thomas Gleixner , Luiz Capitulino , Christoph Lameter , "Paul E . McKenney" , Wanpeng Li , Mike Galbraith , Rik van Riel Subject: [GIT PULL] isolation: 1Hz residual tick offloading v4 Date: Fri, 19 Jan 2018 01:02:14 +0100 Message-Id: <1516320140-13189-1-git-send-email-frederic@kernel.org> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ingo, Please pull the sched/0hz-v2 branch that can be found at: git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git sched/0hz-v2 HEAD: 9b14d5204490f9acd03998a5e406ecadb87cddba Changes in v4: * Remove the nohz_offload option, just stick with the existing interface, the change is transparent. Suggested by Luiz. * Automatically pin workqueues to housekeepers. --- Now that scheduler_tick() has become resilient towards the absence of ticks, current->sched_class->task_tick() is the last piece that needs at least 1Hz tick to keep scheduler stats alive. This patchset offloads this residual 1Hz tick to workqueues. This way the nohz full CPUs don't have anymore tick (assuming nothing else requires it) as their residual 1Hz tick get handled by the housekeepers. Nothing special is required for testing, just use the usual kernel parameters, say on CPUs 1-7: "nohz_full=1-7" or "isolcpus=nohz_offload,domain,1-7" Thanks, Frederic --- Frederic Weisbecker (6): sched: Rename init_rq_hrtick to hrtick_rq_init nohz: Allow to check if remote CPU tick is stopped sched/isolation: Isolate workqueues when "nohz_full=" is set sched/isolation: Residual 1Hz scheduler tick offload sched/nohz: Remove the 1 Hz tick code sched/isolation: Tick offload documentation Documentation/admin-guide/kernel-parameters.txt | 6 +- include/linux/sched/isolation.h | 1 + include/linux/sched/nohz.h | 4 - include/linux/tick.h | 2 + kernel/sched/core.c | 104 +++++++++++++++++------- kernel/sched/idle_task.c | 1 - kernel/sched/isolation.c | 8 +- kernel/sched/sched.h | 13 +-- kernel/time/tick-sched.c | 13 +-- kernel/workqueue.c | 3 +- 10 files changed, 103 insertions(+), 52 deletions(-)