Hi Frederic, On Wed, 22 Jan 2025 at 19:11, Frederic Weisbecker <frederic@xxxxxxxxxx> wrote: > > @@ -1355,6 +1355,7 @@ static void update_isolation_cpumasks(bool isolcpus_updated) ... > > + kthreads_update_affinity(); > > A few things to consider: > > 1) update_isolation_cpumasks() will be called with cpus_read_lock() > (cf: sched_partition_write() and cpuset_write_resmask()), therefore > kthreads_online_cpu() can't run concurrently. Sorry, but I don't understand what you mean by “kthreads_online_cpu() can't run concurrently.” Could you clarify please? > 2) The constraint to turn on/off a CPU as nohz_full will be that the > target CPU is offline. The final goal of CPU isolation is to isolate real-time applications from disturbances and ensure low latency. However, CPU hotplug disrupts real-time tasks including the oslat test, which measures latency using RDTSC. While performing a full CPU offline-online cycle at runtime can help avoid long reboots and reduce downtime, it does not achieve the goal of maintaining consistently low latency for real-time applications. > * scheduler (see the housekeeping_mask() references, especially the ilb which is > my biggest worry, get_nohz_timer_target() shouldn't be an issue) Are you referring to find_new_ilb()? What are your concerns? > * posix cpu timers (make tick_dep unconditional ?) Do you refer to the arm_timer()? Could you please clarify which condition you are referring to? > But we are getting closer! Thank you very much for the detailed review! Thanks, Costa