From: Thomas Gleixner <tglx@linutronix.de>
To: Frederic Weisbecker <frederic@kernel.org>,
Gabriele Monaco <gmonaco@redhat.com>
Cc: linux-kernel@vger.kernel.org,
Anna-Maria Behnsen <anna-maria@linutronix.de>,
Waiman Long <longman@redhat.com>
Subject: Re: [PATCH v6 6/6] timers: Exclude isolated cpus from timer migation
Date: Wed, 25 Jun 2025 12:45:32 +0200 [thread overview]
Message-ID: <87a55waylv.ffs@tglx> (raw)
In-Reply-To: <aFq7rqbHugtiWF6Z@localhost.localdomain>
On Tue, Jun 24 2025 at 16:52, Frederic Weisbecker wrote:
> Le Tue, Jun 24, 2025 at 04:06:41PM +0200, Gabriele Monaco a écrit :
>> Right, but as far as I understood, the first call to
>> tmigr_set_cpu_available() happens after the isolcpus parameter has been
>> parsed so we know at least cpu0 is going to be isolated.
>>
>> On my machine it works reliably this way. I'm a bit lost in the init
>> code but seeing housekeeping_init() before rcu_init(), which in turn
>> should be required for some RCU-related early_initcalls, makes me
>> believe this order is guaranteed to be respected.
>> Or am I missing something?
>
> Right I think you need to keep those checks because if CPU 0 is isolcpus
> and CPU 5 is nohz_full, CPU 0 will become later the timekeeper and must stay
> in the tmigr hierarchy.
>
> OTOH if CPU 0 is isolcpus and there is no nohz_full CPUs, then CPU 0 doesn't
> want to go to the hierarchy.
>
> cpuset isolated partitions are different because they issue SMP calls whereas
> isolcpus is defined on boot.
>
> An alternative for isolcpus could be to make a late initcall and do the smp
> calls from there just like is done for cpusets.
There is zero reason for isolcpus and nohz full muck to be
active/evaluated during early boot. That's all irrelevant and just
complicates things further.
Can we please clean this up and make it a sensible design instead of
duct taping new functionality into it in completely incomprehensible
ways?
Especially under the aspect that all this should become run-time
modifyable. That requires a run-time switch mechanism anyway, so the
obvious design choice is to utilize that run-time switch late in the
boot sequence to set this stuff up before user space starts and leave
the boot process alone and simple.
The KISS principle applies here fully.
Thanks,
tglx
next prev parent reply other threads:[~2025-06-25 10:45 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-30 14:20 [PATCH v6 0/6] timers: Exclude isolated cpus from timer migation Gabriele Monaco
2025-05-30 14:20 ` [PATCH v6 1/6] timers: Rename tmigr 'online' bit to 'available' Gabriele Monaco
2025-06-20 17:04 ` Thomas Gleixner
2025-05-30 14:20 ` [PATCH v6 2/6] timers: Add the available mask in timer migration Gabriele Monaco
2025-05-30 14:20 ` [PATCH v6 3/6] cgroup/cpuset: Rename update_unbound_workqueue_cpumask() to update_exclusion_cpumasks() Gabriele Monaco
2025-05-30 14:20 ` [PATCH v6 4/6] sched/isolation: Force housekeeping if isolcpus and nohz_full don't leave any Gabriele Monaco
2025-05-30 14:20 ` [PATCH v6 5/6] cgroup/cpuset: Fail if isolated and nohz_full don't leave any housekeeping Gabriele Monaco
2025-05-30 14:20 ` [PATCH v6 6/6] timers: Exclude isolated cpus from timer migation Gabriele Monaco
2025-06-20 17:00 ` Thomas Gleixner
2025-06-24 8:05 ` Gabriele Monaco
2025-06-24 13:20 ` Thomas Gleixner
2025-06-24 14:06 ` Gabriele Monaco
2025-06-24 14:52 ` Frederic Weisbecker
2025-06-25 10:45 ` Thomas Gleixner [this message]
2025-06-25 13:16 ` Frederic Weisbecker
2025-06-25 13:46 ` Gabriele Monaco
2025-06-25 14:42 ` Frederic Weisbecker
2025-06-18 12:17 ` [PATCH v6 0/6] " Gabriele Monaco
2025-06-18 12:22 ` 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=87a55waylv.ffs@tglx \
--to=tglx@linutronix.de \
--cc=anna-maria@linutronix.de \
--cc=frederic@kernel.org \
--cc=gmonaco@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox