Bug 748645

Summary: chrt failure messages in boot.log on MRG 2.1 preview install
Product: Red Hat Enterprise MRG Reporter: IBM Bug Proxy <bugproxy>
Component: realtime-utilitiesAssignee: John Kacur <jkacur>
Status: CLOSED CURRENTRELEASE QA Contact: David Sommerseth <davids>
Severity: high Docs Contact:
Priority: high    
Version: 2.1CC: bhu, jkachuck, jkacur, jneedle, lgoncalv, ovasik, wgomerin, williams
Target Milestone: 2.2   
Target Release: ---   
Hardware: x86_64   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Cause: Using an older version of rtctl not for MRG-2.1 and up Consequence: Thread priorities were not properly set. Fix: Update to the current version of rtctl Result: Setting the thread priorities works as expected
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-04-16 15:19:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 955625    

Description IBM Bug Proxy 2011-10-25 00:50:23 UTC
-- Problem Description --
After the install of MRG 2.1 Preview on an HS21xm, we see 
the following messages in /var/log/boot.log:

ROOT:elm9m94:log]> grep chrt boot.log-20111023 
Setting kernel thread priorities: chrt: failed to set pid 7's policy: Invalid argument
chrt: failed to set pid 9's policy: Invalid argument
chrt: failed to set pid 14's policy: Invalid argument
chrt: failed to set pid 18's policy: Invalid argument
chrt: failed to set pid 22's policy: Invalid argument
chrt: failed to set pid 26's policy: Invalid argument
chrt: failed to set pid 30's policy: Invalid argument
chrt: failed to set pid 34's policy: Invalid argument

ROOT:elm9m94:~]> uname -a
Linux elm9m94 3.0.6-rt18.35.el6rt.x86_64 #1 SMP PREEMPT RT Thu Oct 13 12:55:23 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux

ROOT:elm9m94:~]> cat /etc/*release
Red Hat Enterprise Linux Server release 6.1 (Santiago)
Red Hat Enterprise Linux Server release 6.1 (Santiago)

No changes had been made to /etc/init.d/rtctl or /etc/sysconfig/rtctl  or any other file (pristine install). 

Note that pid 7, 9, 14, ... are all the various migration threads 
(per-cpu) and are running at SCHED_FIFO, prio 99  from ps
output:

[migration/0]                   7     99 FF
[migration/1]                   9     99 FF
[migration/2]                  14     99 FF
[migration/3]                  18     99 FF
[migration/4]                  22     99 FF
[migration/5]                  26     99 FF
[migration/6]                  30     99 FF
[migration/7]                  34     99 FF


So it might just be that the error msg is due to the fact that
the migration threads are already at prio 99 and SCHED_FIFO
to start with. 

Setting the RT scheduler priority or policy to be the same as the 
current might have the effect of taking the running task off the 
cpu and putting it to the back of the runqueue for that priority (IIRC??).
It's possible chrt just returns an error in that case? Not checked. 

This might just be chrt handling of that situation, but worth looking
into. 

This is new in MRG 2.1.  Was not seen in MRG 2.0 kernels or MRG
1.3 and earlier. 

Nothing relevant in other logs.

Might be confusing for customers. This was discussed with Clark
Williams (Red Hat) in today's IBM/RH  RT Interlock, and Clark
has also reproduced. We're filing bug for tracking purposes.

Comment 6 John Kacur 2012-06-20 13:13:30 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause: Using an older version of rtctl not for MRG-2.1 and up
Consequence: Thread priorities were not properly set.
Fix: Update to the current version of rtctl
Result: Setting the thread priorities works as expected