Received: by 10.223.176.46 with SMTP id f43csp912296wra; Wed, 24 Jan 2018 07:47:07 -0800 (PST) X-Google-Smtp-Source: AH8x225pTwDeILZE/hil7ItOA9xqweSFwhCGovvxXYREXKuZqzED0NI0eXUoJLIQlS6l4Wan7nzk X-Received: by 2002:a17:902:604e:: with SMTP id a14-v6mr8910873plt.362.1516808826898; Wed, 24 Jan 2018 07:47:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516808826; cv=none; d=google.com; s=arc-20160816; b=UTAr9HbelX3D5vSbJFUObWSTIIXzQ29P8wtz58eRp7ujrS3FtHP43hih6buIQigenR QLr729gYEL0ApldQj+IILeQCJpBeHNLhSKSXGWBhIooh35F1fMGKizw/ZXlI72sw2K1A aQgYosnzKYUyq7Pu5lp6ED73Bj6S4IsEYHo3Nr1UIh4Y6sOW1m4sY1M7IvWChTmHME6S a/BhXD3zG5xd3GqYsLI+G47ErRhqaLUi5iFpojSXMCiPHnOOhbLQVUnXJ5V3DXhWT9oS xng6iZkQmOfmmgOHuKNjdCsYcqQjbj7zAHVUUV+3IRpdb7x1LHSsYI1nSx00y2OsdWij 1zMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :organization:references:in-reply-to:message-id:subject:cc:to:from :date:arc-authentication-results; bh=jWzZ0ve5YfeIrR+5pm8iHPaZ8V/Lv5cPgEcazo9WR54=; b=X2mwI9ErZvidQRqqirKUwNS/WaQzBU0bnW4AHkwpWEDiivRp312RulwCqvH0Yd8TXG 9B98Ot1QBEVDrg0xb3MHkD1Ti1ln0EPBx2nUHyByLoW0NXYspl7wy6SoO6lZE+Uc+NVU QB7S/lKj2Dgz+12Ww5IL2SQ2n/zuxEBPR1g2AwHITOlbn5c4J2vGc+gcPwkLs57XgRr9 fo1VRbCc8cfaDbINfbMGgptdhQjS3S3lqE+lINS6MyjCBWxeigyAcTkGK6aGbJCXnSNT rVZiaVEtj9/G4Sbf0wRP/J6nClyZSP8pvKTSxNvFhMQAsZtoFwJxKv3mBjeG0Ed5gMB7 11Wg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e11-v6si380251plo.556.2018.01.24.07.46.52; Wed, 24 Jan 2018 07:47:06 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964792AbeAXPqP (ORCPT + 99 others); Wed, 24 Jan 2018 10:46:15 -0500 Received: from mx1.redhat.com ([209.132.183.28]:43386 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934058AbeAXPqO (ORCPT ); Wed, 24 Jan 2018 10:46:14 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 25BD760A80; Wed, 24 Jan 2018 15:46:14 +0000 (UTC) Received: from localhost (ovpn-116-44.phx2.redhat.com [10.3.116.44]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9DB62190C6; Wed, 24 Jan 2018 15:46:09 +0000 (UTC) Date: Wed, 24 Jan 2018 10:46:08 -0500 From: Luiz Capitulino To: Frederic Weisbecker Cc: Ingo Molnar , LKML , Peter Zijlstra , Chris Metcalf , Thomas Gleixner , Christoph Lameter , "Paul E . McKenney" , Wanpeng Li , Mike Galbraith , Rik van Riel Subject: Re: [GIT PULL] isolation: 1Hz residual tick offloading v4 Message-ID: <20180124104608.038fb212@redhat.com> In-Reply-To: <1516320140-13189-1-git-send-email-frederic@kernel.org> References: <1516320140-13189-1-git-send-email-frederic@kernel.org> Organization: Red Hat MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Wed, 24 Jan 2018 15:46:14 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 19 Jan 2018 01:02:14 +0100 Frederic Weisbecker wrote: > 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. I've been testing this series and the tick doesn't go completely away for me: it ticks at around 8 seconds interval. I've debugged this down to the clocksource_watchdog() timer, which is created by clocksource_start_watchdog(). This timer cycles over all online CPUs. I couldn't find a way to disable it. It seems to be always enabled for x86 by CONFIG_CLOCKSOURCE_WATCHDOG since commit 6471b825c4. Since the 1Hz tick offload worked for you, I must be missing a way to disable this timer or the kernel is thinking my CPU has unstable TSC (which it doesn't AFAIK). > > --- > 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(-) >