Bug 1346715
| Summary: | tuned profile configuration for "kernel.sched_rt_runtime_us" in package "tuned-profiles-realtime" cause error when spawning instance | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Harald Jensås <hjensas> | |
| Component: | tuned | Assignee: | Jaroslav Škarvada <jskarvad> | |
| Status: | CLOSED ERRATA | QA Contact: | Tereza Cerna <tcerna> | |
| Severity: | high | Docs Contact: | Jiri Herrmann <jherrman> | |
| Priority: | high | |||
| Version: | 7.2 | CC: | jeder, jherrman, jskarvad, lcapitulino, mtosatti, psklenar, tcerna, williams | |
| Target Milestone: | rc | Keywords: | Upstream, ZStream | |
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | tuned-2.7.0-1.el7 | Doc Type: | Release Note | |
| Doc Text: |
The global limit on how much time realtime scheduling may use has been removed in realtime Tuned profile
Prior to this update, the Tuned utility configuration for the `kernel.sched_rt_runtime_us` sysctl variable in the realtime profile included in the _tuned-profiles-realtime_ package was incorrect. As a consequence, creating a virtual machine instance caused an error due to incompatible scheduling time. Now, the value of `kernel.sched_rt_runtime_us` is set to "-1" (no limit), and the described problem no longer occurs.
|
Story Points: | --- | |
| Clone Of: | ||||
| : | 1372190 (view as bug list) | Environment: | ||
| Last Closed: | 2016-11-04 07:27:55 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1240765, 1372190 | |||
|
Description
Harald Jensås
2016-06-15 08:44:42 UTC
A global limit on how much time realtime scheduling may use. A run time of -1 specifies runtime == period, ie. no limit. I think that -1 is better for realtime, but I am afraid it could also lockup non RT tasks. Could anybody dealing with RT elaborate on it? Jeremy? I also think that Nova should react more sanely on this condition. Yes, Harald is right. The correct value is -1. Jaroslav, can you fix it (in upstream and downstream) or should I post a patch? Upstream commit containing the fix: https://git.fedorahosted.org/cgit/tuned.git/commit/?id=099ae05b747783aa8f4b0a743070ca8a89962d57 *** Bug 1346430 has been marked as a duplicate of this bug. *** ==============================================
Verified in:
tuned-2.7.0-1.el7.noarch
tuned-profiles-realtime-2.7.0-1.el7.noarch
kernel-3.10.0-327.10.1.el7.x86_64
PASS
==============================================
# cat /usr/lib/tuned/realtime/tuned.conf | grep "kernel.sched_rt_runtime_us"
kernel.sched_rt_runtime_us = -1
# tuned-adm profile realtime
# sysctl kernel.sched_rt_runtime_us
kernel.sched_rt_runtime_us = -1
==============================================
Reproduced in:
tuned-2.5.1-4.el7.noarch
tuned-profiles-realtime-2.5.1-4.el7.noarch
kernel-3.10.0-327.10.1.el7.x86_64
FAIL
==============================================
# cat /usr/lib/tuned/realtime/tuned.conf | grep "kernel.sched_rt_runtime_us"
kernel.sched_rt_runtime_us = 1000000
# tuned-adm profile realtime
# sysctl kernel.sched_rt_runtime_us
kernel.sched_rt_runtime_us = 1000000
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
If you see following:
# cat /usr/lib/tuned/realtime/tuned.conf | grep "kernel.sched_rt_runtime_us"
kernel.sched_rt_runtime_us = -1
# tuned-adm profile realtime
# sysctl kernel.sched_rt_runtime_us
kernel.sched_rt_runtime_us = 950000
^^^^^^
This is not problem of tuned, but kernel. Use older version or newer one.
# rpm -q kernel
kernel-3.10.0-481.el7.x86_64
See bug BZ#1357928.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Automated test case was created: /CoreOS/tuned/Regression/realtime--check-kernel-sched_rt_runtime_us NEW FUNCTIONALITY: :: [ PASS ] :: Command 'cat /usr/lib/tuned/realtime/tuned.conf | grep 'kernel.sched_rt_runtime_us' | grep '\-1'' (Expected 0, got 0) :: [ PASS ] :: Command 'tuned-adm profile realtime' (Expected 0, got 0) :: [ PASS ] :: Command 'sysctl kernel.sched_rt_runtime_us | grep '\-1'' (Expected 0, got 0) :: [ LOG ] :: Duration: 3s :: [ LOG ] :: Assertions: 3 good, 0 bad :: [ PASS ] :: RESULT: Check value of kernel.sched_rt_runtime_us OLD FUNCTIONALITY ::: [ FAIL ] :: Command 'cat /usr/lib/tuned/realtime/tuned.conf | grep 'kernel.sched_rt_runtime_us' | grep '\-1'' (Expected 0, got 1) :: [ PASS ] :: Command 'tuned-adm profile realtime' (Expected 0, got 0) :: [ FAIL ] :: Command 'sysctl kernel.sched_rt_runtime_us | grep '\-1'' (Expected 0, got 1) :: [ LOG ] :: Duration: 4s :: [ LOG ] :: Assertions: 1 good, 2 bad :: [ FAIL ] :: RESULT: Check value of kernel.sched_rt_runtime_us 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 |