Bug 1626082

Summary: realtime-virtual-host: error doesn't prevent profile from getting applied
Product: Red Hat Enterprise Linux 7 Reporter: Jaroslav Škarvada <jskarvad>
Component: tunedAssignee: Jaroslav Škarvada <jskarvad>
Status: CLOSED WONTFIX QA Contact: qe-baseos-daemons
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.6CC: jeder, jskarvad, lcapitulino, olysonek, psklenar, tcerna, thozza
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1461509
: 1779227 (view as bug list) Environment:
Last Closed: 2019-12-18 11:32:05 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, 1779227    

Comment 2 Ondřej Lysoněk 2018-09-06 16:00:00 UTC
> While printing the error message is helpful, it is not enough to solve this
> issue. IMO, in case of an error tuned should:
> 
> 1. Go back to the previous profile
> 2. Return an error code

We can certainly return the error code, there's no problem with that. But there's a problem with switching to the previous profile. Currently errors happen (meaning error messages get printed) all the time, e.g. when the hardware doesn't support some feature, or until recently, when CPU affinity couldn't be changed etc. We're continuously working on fixing that, but it'll take time. So before implementing the switch to the previous profile, we need to either:
a) make sure errors will not occur in non-critical situations (haha), or
b) explicitly mark critical errors and do the profile switch only when a critical error occurs

Comment 3 Luiz Capitulino 2018-09-06 16:12:14 UTC
Very well said Ondrej, I completely agree! I think we should do b): explicitly mark critical errors as a first step.

If I can give my (humble) opinion on how to do this, I think this should be per-profile. That is, each profile is responsible of marking its own critical errors. For script.sh this is probably achievable by having a crit_error() function. Now, for tuned.conf is a little harder. Maybe having a "errors_are_critical = True/False" entry for sections?

Comment 4 Ondřej Lysoněk 2018-09-06 16:16:15 UTC
Yes, I think something like that could work.

Comment 5 Jaroslav Škarvada 2018-09-07 11:41:54 UTC
I think that explicitly calling die or exiting script.sh with exit code different from 0 should be always critical. Just outputting on stderr shouldn't be critical. We could also patch 'die' function to take exit code from it's first parameter. It would be more flexibile. And handling 'die 0 STRING....' as non critical, and 'die !0 STRING...' as critical.

Comment 6 Tomáš Hozza 2019-12-18 11:31:56 UTC
Red Hat Enterprise Linux version 7 entered the Maintenance Support 1 Phase in August 2019. In this phase only qualified Critical and Important Security errata advisories (RHSAs) and Urgent Priority Bug Fix errata advisories (RHBAs) may be released as they become available. Other errata advisories may be delivered as appropriate.

This bug has been reviewed by Support and Engineering representative and does not meet the inclusion criteria for Maintenance Support 1 Phase. If this issue still exists in newer major version of Red Hat Enterprise Linux, it has been cloned there and work will continue in the cloned bug.

For more information about Red Hat Enterprise Linux Lifecycle, please see https://access.redhat.com/support/policy/updates/errata/

Comment 7 RHEL Program Management 2019-12-18 11:32:05 UTC
Development Management has reviewed and declined this request. You may appeal this decision by using your Red Hat support channels, who will make certain  the issue receives the proper prioritization with product and development management.

https://www.redhat.com/support/process/production/#howto