1
0
Fork 0

cpu-partitioning: enable timer migration

As the cpu-partitioning profile does not use isolcpus=,
the kernel can end up creating long living timers on
nohz_full CPUs during early boot. Those timers will
fire later, causing jitter.

However, recent Linux kernel will always try to migrate
unpinned timers away from nohz_full CPUs when timer
migration is enabled which is what we want.

NOTE: Older kernels would migrate unpinned timers from
      idle CPUs to busy CPUs without regard if the
      CPU is nohz_full. This would certainly cause
      trouble to applications that takes 100% of the
      CPU in user-space (eg. DPDK). So, enabling
      timer migration is only safe on recent kernels.

Resolves: rhbz#1408308

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
Luiz Capitulino 2017-01-09 15:59:07 -05:00 committed by Jaroslav Škarvada
parent 0ce452fc2e
commit 11686d59fe

View file

@ -23,7 +23,7 @@ assert=${f:assertion:isolated_cores contains present CPU(s):${isolated_cores_exp
kernel.hung_task_timeout_secs = 600
kernel.nmi_watchdog = 0
vm.stat_interval = 10
kernel.timer_migration = 0
kernel.timer_migration = 1
[sysfs]
/sys/bus/workqueue/devices/writeback/cpumask = ${not_isolated_cpumask}