All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frederic Weisbecker <frederic@kernel.org>
To: Jing Wu <realwujing@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Juri Lelli <juri.lelli@redhat.com>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Dietmar Eggemann <dietmar.eggemann@arm.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Ben Segall <bsegall@google.com>, Mel Gorman <mgorman@suse.de>,
	Valentin Schneider <vschneid@redhat.com>,
	"Paul E. McKenney" <paulmck@kernel.org>,
	Neeraj Upadhyay <neeraj.upadhyay@kernel.org>,
	Joel Fernandes <joelagnelf@nvidia.com>,
	Josh Triplett <josh@joshtriplett.org>,
	Boqun Feng <boqun@kernel.org>,
	Uladzislau Rezki <urezki@gmail.com>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	Zqiang <qiang.zhang@linux.dev>,
	Anna-Maria Behnsen <anna-maria@linutronix.de>,
	Tejun Heo <tj@kernel.org>, Jonathan Corbet <corbet@lwn.net>,
	Shuah Khan <skhan@linuxfoundation.org>,
	Shuah Khan <shuah@kernel.org>, Thomas Gleixner <tglx@kernel.org>,
	Waiman Long <longman@redhat.com>,
	linux-kernel@vger.kernel.org, rcu@vger.kernel.org,
	cgroups@vger.kernel.org, linux-doc@vger.kernel.org,
	linux-kselftest@vger.kernel.org,
	Qiliang Yuan <yuanql9@chinatelecom.cn>
Subject: Re: [PATCH v4 07/11] tick/nohz: add runtime tick_nohz_full_mask update for CPU isolation
Date: Wed, 23 Sep 2026 18:07:50 +0200	[thread overview]
Message-ID: <arP5VgdUIUykJRik@localhost.localdomain> (raw)
In-Reply-To: <20260710-wujing-dhm-v4-7-2e912e5d9645@gmail.com>

Le Fri, Jul 10, 2026 at 11:28:18AM +0800, Jing Wu a écrit :
> When kernel-noise isolation is requested for a CPU at runtime via a
> cpuset isolated partition, tick suppression must be activated on the
> affected CPU without requiring nohz_full= at boot.
> 
> tick_nohz_full_mask and tick_nohz_full_running are currently set only
> during boot by tick_nohz_full_setup(). There is no runtime path to add
> or remove CPUs from the full-dynticks set.
> 
> Add tick_nohz_cpu_isolate() and tick_nohz_cpu_deisolate(), both called
> with the target CPU offline (between remove_cpu and add_cpu in the
> hotplug cycling path):
> 
>   tick_nohz_cpu_isolate(cpu) - lazily allocates tick_nohz_full_mask
>     if it was never set up at boot, sets the CPU's bit in the mask,
>     sets tick_nohz_full_running, and calls ct_cpu_track_user() to
>     activate per-CPU context tracking so kernel/user transitions
>     suppress the scheduler tick.
> 
>   tick_nohz_cpu_deisolate(cpu) - reverses the above: deactivates
>     context tracking via ct_cpu_untrack_user(), clears the CPU's bit,
>     and clears tick_nohz_full_running when the mask becomes empty.
> 
> A per-function mutex guards the lazy allocation and running flag
> updates against concurrent isolation requests.
> 
> Co-developed-by: Qiliang Yuan <yuanql9@chinatelecom.cn>
> Signed-off-by: Qiliang Yuan <yuanql9@chinatelecom.cn>
> Signed-off-by: Jing Wu <realwujing@gmail.com>
> ---
>  include/linux/tick.h     |  4 ++++
>  kernel/time/tick-sched.c | 45 +++++++++++++++++++++++++++++++++++++++++++++

tick_nohz_full_running is essentially a duplicate of
~housekeeping_cpumask(HK_TYPE_KERNEL_NOISE) and tick_nohz_full_running a
duplicate of housekeeping_enabled(HK_TYPE_KERNEL_NOISE).

Perhaps those two variables should be removed?

Thanks.

-- 
Frederic Weisbecker
SUSE Labs

  reply	other threads:[~2026-09-23 16:07 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-10  3:28 [PATCH v4 00/11] Dynamic Housekeeping Management (DHM) via CPUSets Jing Wu
2026-07-10  3:28 ` [PATCH v4 01/11] sched/isolation: Add runtime housekeeping mask updates with boot snapshots Jing Wu
2026-07-10  3:28 ` [PATCH v4 02/11] sched/isolation: RCU-protect runtime-mutable housekeeping cpumask readers Jing Wu
2026-07-10  3:28 ` [PATCH v4 03/11] cgroup/cpuset: Drive kernel-noise housekeeping updates from isolated partitions Jing Wu
2026-09-23 15:10   ` Frederic Weisbecker
2026-07-10  3:28 ` [PATCH v4 04/11] context_tracking: allow runtime per-CPU user tracking enable/disable Jing Wu
2026-07-10  3:28 ` [PATCH v4 05/11] rcu/nocb: support lazy init for runtime CPU isolation Jing Wu
2026-07-10  3:28 ` [PATCH v4 06/11] watchdog: sync watchdog_cpumask with HK_TYPE_KERNEL_NOISE on isolation Jing Wu
2026-07-10  3:28 ` [PATCH v4 07/11] tick/nohz: add runtime tick_nohz_full_mask update for CPU isolation Jing Wu
2026-09-23 16:07   ` Frederic Weisbecker [this message]
2026-07-10  3:28 ` [PATCH v4 08/11] cpuset: add dhm_cycling_cpus mask to suppress transient invalidation Jing Wu
2026-07-10  3:28 ` [PATCH v4 09/11] cpuset: drive kernel-noise isolation via per-CPU hotplug cycling Jing Wu
2026-07-10  3:28 ` [PATCH v4 10/11] docs: cgroup-v2: document kernel-noise isolation via isolated partitions Jing Wu
2026-07-10  3:28 ` [PATCH v4 11/11] selftests/cgroup: add kernel-noise isolation test to cpuset selftest Jing Wu
2026-09-21  3:13 ` [PATCH v4 00/11] Dynamic Housekeeping Management (DHM) via CPUSets Jing Wu
2026-09-23 15:27 ` Frederic Weisbecker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=arP5VgdUIUykJRik@localhost.localdomain \
    --to=frederic@kernel.org \
    --cc=anna-maria@linutronix.de \
    --cc=boqun@kernel.org \
    --cc=bsegall@google.com \
    --cc=cgroups@vger.kernel.org \
    --cc=corbet@lwn.net \
    --cc=dietmar.eggemann@arm.com \
    --cc=jiangshanlai@gmail.com \
    --cc=joelagnelf@nvidia.com \
    --cc=josh@joshtriplett.org \
    --cc=juri.lelli@redhat.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=longman@redhat.com \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mgorman@suse.de \
    --cc=mingo@redhat.com \
    --cc=neeraj.upadhyay@kernel.org \
    --cc=paulmck@kernel.org \
    --cc=peterz@infradead.org \
    --cc=qiang.zhang@linux.dev \
    --cc=rcu@vger.kernel.org \
    --cc=realwujing@gmail.com \
    --cc=rostedt@goodmis.org \
    --cc=shuah@kernel.org \
    --cc=skhan@linuxfoundation.org \
    --cc=tglx@kernel.org \
    --cc=tj@kernel.org \
    --cc=urezki@gmail.com \
    --cc=vincent.guittot@linaro.org \
    --cc=vschneid@redhat.com \
    --cc=yuanql9@chinatelecom.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.