Red Hat Bugzilla – Bug 1323283
realtime profile: disable timer migration
Last modified: 2016-11-04 03:27:19 EDT
Description of problem: It was found during code review that the kernel always try to migrate timers away from idle CPUs to busy CPUs. Real-time CPUs running dpdk polling threads for example, are busy so they are a great candidate to receive timers from idle CPUs (see get_nohz_timer_target() in the kernel sources). It is not clear how this problem can affect real-time applications and KVM-RT. However, for real-time and high-performance the best thing is for a timer to always fire in the CPU where it was created. Version-Release number of selected component (if applicable): tuned-profiles-realtime-2.5.1-6.el7.noarch
Thanks, applied: https://git.fedorahosted.org/cgit/tuned.git/commit/?id=32ef5d8db01c6b539c5d86cfdd6589537d3625d3
Thanks a lot Jaroslav. I'll let you handle this for RHEL7.3 and later for RHEL7.2-z. But no rush, it's not an urgent issue.
============================================== Verified in: tuned-2.7.1-2.el7.noarch tuned-profiles-realtime-2.7.1-2.el7.noarch PASS ============================================== # grep timer /usr/lib/tuned/realtime/tuned.conf kernel.timer_migration = 0 # sysctl kernel.timer_migration kernel.timer_migration = 1 # tuned-adm profile realtime # sysctl kernel.timer_migration kernel.timer_migration = 0 ============================================== Reproduced in: tuned-2.5.1-1.el7.noarch tuned-profiles-realtime-2.5.1-1.el7.noarch FAIL ============================================== # grep timer /usr/lib/tuned/realtime/tuned.conf # sysctl kernel.timer_migration kernel.timer_migration = 1 # tuned-adm profile realtime # sysctl kernel.timer_migration kernel.timer_migration = 1
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-2479.html