Bug 1377574

Summary: iothread values' logic not quite clear
Product: Red Hat Enterprise Linux 7 Reporter: yisun
Component: libcgroupAssignee: Nikola Forró <nforro>
Status: CLOSED WONTFIX QA Contact: Chao Ye <cye>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.4CC: cye, hhorak, yisun
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-07-15 06:14:52 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:

Description yisun 2016-09-20 06:39:22 UTC
Description of problem:
iothread values' logic not quite clear

Version-Release number of selected component (if applicable):
kernel-3.10.0-508.el7.x86_64
libcgroup-0.41-11.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1. # pwd
/sys/fs/cgroup/cpu,cpuacct/machine.slice/machine-qemu\x2d1\x2dvirtlabtestcopy.scope

2. # ll | egrep "vcpu|iothread|emulator"
drwxr-xr-x. 2 root root 0 Sep 20 13:40 emulator
drwxr-xr-x. 2 root root 0 Sep 20 13:51 iothread1
drwxr-xr-x. 2 root root 0 Sep 20 13:40 vcpu0
drwxr-xr-x. 2 root root 0 Sep 20 13:40 vcpu1
drwxr-xr-x. 2 root root 0 Sep 20 13:40 vcpu2
drwxr-xr-x. 2 root root 0 Sep 20 13:40 vcpu3

3. current cpu related values as follow:
# cat cpu.shares 
1024
# cat cpu.cfs_quota_us 
2500
# cat cpu.cfs_period_us 
100000
# cat vcpu*/cpu.cfs_quota_us
1000
1000
1000
1000
# cat vcpu*/cpu.cfs_period_us
100000
100000
100000
100000
# cat emulator*/cpu.cfs_quota_us
-1
# cat emulator*/cpu.cfs_period_us
100000
# cat iothread1/cpu.cfs_quota_us 
1300
# cat iothread1/cpu.cfs_period_us 
100000

4. try to set iothread1/cpu.cfs_period_us to 51998, it's failed
# echo 51998 > iothread1/cpu.cfs_period_us 
-bash: echo: write error: Invalid argument

5. try to set iothread1/cpu.cfs_period_us to 51999, it's successful
# echo 51999 > iothread1/cpu.cfs_period_us 

# cat iothread1/cpu.cfs_period_us 
51999

Actual results:
as step 4, echo 51998 > iothread1/cpu.cfs_period_us

Expected results:
why set 51998 failed but set 51999 successful? the logic is not quite clear. 

Additional info:
This is from bug 1356937

Comment 2 Honza Horak 2020-07-15 06:14:52 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 Engineering representative and does not meet the inclusion criteria for Maintenance Support 1 phase.

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

Feel free to re-open this for Red Hat Enterprise Linux 8 if you still see issue there.