Bug 2168478

Summary: rt-setup overwrites "kernel.hung_task_panic" and "kernel.hung_task_timeout_secs" values even if those values are already set.
Product: Red Hat Enterprise Linux 8 Reporter: Yoshiaki Senda <ysenda>
Component: rt-setupAssignee: John Kacur <jkacur>
Status: CLOSED ERRATA QA Contact: Shizhao Chen <shichen>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: CentOS StreamCC: amaumene, bhu, bstinson, jkacur, jwboyer, mstowell, neil, qzhao, rt-maint
Target Milestone: rcKeywords: Triaged
Target Release: 8.9   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: rt-setup-2.1-5.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-11-14 15:22:33 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:

Description Yoshiaki Senda 2023-02-09 06:38:12 UTC
Description of problem:

The script on post section of rt-setup.spec overwrites "kernel.hung_task_panic" and "kernel.hung_task_timeout_secs" values even if those values are already set.


The script checks /etc/sysctl.conf and if it finds "kernel.hung_task_panic" and "kernel.hung_task_timeout_secs" are already set, it does not set "kernel.hung_task_panic" and "kernel.hung_task_timeout_secs".

But the script doesn't check files under /etc/sysctl.d. If users set "kernel.hung_task_panic" and "kernel.hung_task_timeout_secs" values inside the file under /etc/sysctl.d directory, those values are ignored, and the script overwrite those values.


Version-Release number of selected component (if applicable):

Name: rt-setup
Version: 2.1
Release: 4%{?dist}
License: GPL+
Summary: Setup RHEL-RT environment details
Group: System Environment/Base
Source: rt-setup-%{version}.tar.bz2

How reproducible:

consistent.


Steps to Reproduce:

1. Set "kernel.hung_task_panic" values to 1 inside the file under /etc/sysctl.d directory.
2. Install this package that overwrites "kernel.hung_task_panic" value.


Actual results:

"kernel.hung_task_panic" sets as "0"


Expected results:

"kernel.hung_task_panic" sets as "1"



Additional info:

Comment 1 Yoshiaki Senda 2023-02-09 07:55:37 UTC
I submitted PR to https://git.centos.org/rpms/rt-setup/pull-request/1 .

Comment 2 Yoshiaki Senda 2023-02-09 15:30:10 UTC
I submitted MR to https://gitlab.com/redhat/centos-stream/rpms/rt-setup/-/merge_requests/1

Comment 5 Yoshiaki Senda 2023-03-15 22:40:55 UTC
MR merged to CentOS 8 Stream. https://gitlab.com/redhat/centos-stream/rpms/rt-setup/-/merge_requests/1
Thank you John Kacur for you support.

Comment 6 Shizhao Chen 2023-03-23 03:19:23 UTC
rt-setup-2.1-5.el8 PASS T0:

https://beaker.engineering.redhat.com/recipes/13599190#tasks


-----

And additionally:

[root@rt-qe-07 rt-setup]# cat /etc/sysctl.d/50-custom.conf
kernel.hung_task_panic = 1
kernel.hung_task_timeout_secs = 999
[root@rt-qe-07 rt-setup]# ls /etc/sysctl.d -l
total 4
-rw-r--r--. 1 root root 63 Mar 22 23:00 50-custom.conf
lrwxrwxrwx. 1 root root 14 Mar 14 05:47 99-sysctl.conf -> ../sysctl.conf

# the sysctl settings are removed manually from /etc/sysctl.conf

[root@rt-qe-07 rt-setup]# grep 'kernel\.' /etc/sysctl.conf ; echo $?
1
[root@rt-qe-07 rt-setup]# rpm -q rt-setup
rt-setup-2.1-4.el8.x86_64
[root@rt-qe-07 rt-setup]# dnf in -y rt-setup-2.1-5.el8.x86_64.rpm --quiet

Upgraded:
  rt-setup-2.1-5.el8.x86_64

[root@rt-qe-07 rt-setup]# grep 'kernel\.' /etc/sysctl.conf ; echo $?
1
[root@rt-qe-07 rt-setup]# dnf downgrade -y --quiet rt-setup

Downgraded:
  rt-setup-2.1-4.el8.x86_64

[root@rt-qe-07 rt-setup]# grep 'kernel\.' /etc/sysctl.conf ; echo $?
kernel.hung_task_panic = 0
# note: this only matters if kernel.hung_task_panic=1
kernel.hung_task_timeout_secs = 600
0


> Marking Tested.

Comment 13 errata-xmlrpc 2023-11-14 15:22:33 UTC
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 (rt-setup bug fix and enhancement update), 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://access.redhat.com/errata/RHBA-2023:6900