Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1451361

Re: clocksource_watchdog causing scheduling of timers every second (was [v13] support "task_isolation" mode)

From Christoph Lameter <cl@linux.com>
Newsgroups linux.kernel
Subject Re: clocksource_watchdog causing scheduling of timers every second (was [v13] support "task_isolation" mode)
Date 2016-07-27 17:40 +0200
Message-ID <rZz6a-1cX-7@gated-at.bofh.it> (permalink)
References (4 earlier) <rYR58-6Qr-21@gated-at.bofh.it> <rYR58-6Qr-19@gated-at.bofh.it> <rZxxo-6F-9@gated-at.bofh.it> <rZyWu-19P-23@gated-at.bofh.it> <rZyWu-19P-21@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Ok here is a possible patch that explicitly checks for housekeeping cpus:

Subject: clocksource: Do not schedule watchdog on isolated or NOHZ cpus

watchdog checks can only run on housekeeping capable cpus. Otherwise
we will be generating noise that we would like to avoid on the isolated
processors.

Signed-off-by: Christoph Lameter <cl@linux.com>

Index: linux/kernel/time/clocksource.c
===================================================================
--- linux.orig/kernel/time/clocksource.c	2016-07-27 08:41:17.109862517 -0500
+++ linux/kernel/time/clocksource.c	2016-07-27 10:28:31.172447732 -0500
@@ -269,9 +269,12 @@ static void clocksource_watchdog(unsigne
 	 * Cycle through CPUs to check if the CPUs stay synchronized
 	 * to each other.
 	 */
-	next_cpu = cpumask_next(raw_smp_processor_id(), cpu_online_mask);
-	if (next_cpu >= nr_cpu_ids)
-		next_cpu = cpumask_first(cpu_online_mask);
+	do {
+		next_cpu = cpumask_next(raw_smp_processor_id(), cpu_online_mask);
+		if (next_cpu >= nr_cpu_ids)
+			next_cpu = cpumask_first(cpu_online_mask);
+	} while (!is_housekeeping_cpu(next_cpu));
+
 	watchdog_timer.expires += WATCHDOG_INTERVAL;
 	add_timer_on(&watchdog_timer, next_cpu);
 out:

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

clocksource_watchdog causing scheduling of timers every second (was  [v13] support "task_isolation" mode) Christoph Lameter <cl@linux.com> - 2016-07-27 16:00 +0200
  Re: clocksource_watchdog causing scheduling of timers every second  (was [v13] support "task_isolation" mode) Christoph Lameter <cl@linux.com> - 2016-07-27 17:30 +0200
    Re: clocksource_watchdog causing scheduling of timers every second  (was [v13] support "task_isolation" mode) Christoph Lameter <cl@linux.com> - 2016-07-27 17:40 +0200
      Re: clocksource_watchdog causing scheduling of timers every second  (was [v13] support "task_isolation" mode) Christoph Lameter <cl@linux.com> - 2016-07-27 21:00 +0200
        Re: clocksource_watchdog causing scheduling of timers every second  (was [v13] support "task_isolation" mode) Christoph Lameter <cl@linux.com> - 2016-07-27 22:00 +0200
          Re: clocksource_watchdog causing scheduling of timers every second  (was [v13] support "task_isolation" mode) Francis Giraldeau <francis.giraldeau@gmail.com> - 2016-07-29 20:40 +0200

csiph-web