Description of problem: mpstat on intermittently shows incorrect CPU usage on ALL CPU field for "iowait" Version-Release number of selected component (if applicable): All versions affected, affected customer here used sysstat-11.7.3-5.el8 How reproducible: not easily Steps to Reproduce: 1. On a bugger system, i.e. 32 cores, execute mpstat, for example "mpstat -P ALL 1 1" or "mpstat -P ALL 1 3600" Actual results: Total CPU usage (%iowait) is 97.10%. 01:17:04 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 01:17:05 AM all 0.00 0.00 0.01 _97.10_ 0.00 0.00 0.00 0.00 0.00 2.88 01:17:05 AM 17 0.00 0.00 0.00 _99.91_ 0.00 0.00 0.00 0.00 0.00 0.09 Expected results: Total CPU usage (%iowait) should be a value which is divided by 32, because the system has 32 CPUs. 01:17:04 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 01:17:05 AM all 0.00 0.00 0.01 _3.12_ 0.00 0.00 0.00 0.00 0.00 2.88 01:17:05 AM 17 0.00 0.00 0.00 _99.91_ 0.00 0.00 0.00 0.00 0.00 0.09 Additional info: - Issue exists also in upstream - a build of mpstat with the following commit was reported to fix the issue for the customer: https://github.com/sysstat/sysstat/commit/1f5949d4a6fcb33065dbb1d509f356db039998ed So, requesting this commit into RHEL. Workaround exists, Performance Co-Pilot (PCP) provides independent code which gathers metrics and provides with "pcp mpstat" an independent client of similar output, which does not show the issue.
CentOS Stream 8 MR: https://gitlab.com/redhat/centos-stream/rpms/sysstat/-/merge_requests/7