Is the svctm's output of iostat unreliable as described within the man page?
Issue
-
The following is a portion of iostat's man page. It provides a warning and indicates the svctm field will be removed in a future sysstat version.
# man iostat : svctm The average service time(in milliseconds) for I/O requests that were issued to the device. Warning! Do not trust this field any more. This field will be removed in a future sysstat version.
-
If the output of svctm from iostat cannot be trusted, are there any alternative fields or tools instead of svctm field?
-
The iostat output shows
await
much larger thansvctm
. There is other linux documentation on the web that states that sinceawait
time is OS level waiting and thesvctm
is disk response time, then this meansawait
-svctm
is linux kernel overhead and the numbers are showing a kernel bug or need for tuning. Is this correct?
Environment
- Red Hat Enterprise Linux 9
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 6
- Exceptions:
- RHEL 9
- Due to its general unreliable nature, the
svctm
column has been removed fromiostat
output starting with RHEL 9. Per systats 🔗 git repository:
2018/12/14: Version 12.1.2 - Sebastien Godard (sysstat
orange.fr) * iostat/sar: Remove service time (svctm) metric. Service time value (displayed as svctm by sar and iostat) could no longer be trusted and has been made obsolete for several years. So remove it now from sar (sar -d) and iostat output.
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.