run plugins and compression with I/O idle class

Bug #1850953 reported by Andrea Ieri
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
sosreport
Unknown
Unknown
sosreport (Ubuntu)
Fix Released
Wishlist
Unassigned

Bug Description

[copy paste of https://github.com/sosreport/sos/issues/1844]

In at least version 3.6-1ubuntu0.16.04.3 and 3.6-1ubuntu0.18.04.3, neither the sosreport process itself, nor (and more importantly) the compression binary are run with an explicit I/O nice class.
This results in the use of the best-effort class, and can cause serious iowait on hosts with limited I/O capabilities:

$ ionice -p `pgrep xz`
none: prio 0
$ ionice -p `pgrep sosreport`
none: prio 0

I propose any command sosreport runs to be reniced to use the idle class, or at least a low-priority best-effort profile.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Thanks for filing this bug in Ubuntu, and the upstream one as well.

Upstream doesn't seem very keen in making such a change for the general case. Maybe if you could propose a command-line option that would add it?

Changed in sosreport (Ubuntu):
status: New → Triaged
importance: Undecided → Wishlist
Revision history for this message
Andrea Ieri (aieri) wrote :

Hi Andreas,

I can understand upstream's approach: sosreport should just do its job, and tuning should be up to the administrator. Having said that, given the type of tool sosreport is and the circumstances it tends to be used in, I think that we could offer a better user experience if sosreport ran using the idle class by default. Operators that prefer a sosreport run to complete as soon as possible could then still execute it through ionice and use a higher priority class.
No extra command-line options are needed.

Revision history for this message
Andrea Ieri (aieri) wrote :

Actually... on second thought a command-line option may be unavoidable. If sosreport were to explicitly set a io policy, it might end up overriding what the operator might specify via ionice.

Revision history for this message
Eric Desrochers (slashd) wrote :

This bug is now part of the upstream 4.1 milestone;
https://github.com/sosreport/sos/milestone/11

Will keep this case mark as 'triage' for now.

- Eric

Revision history for this message
Eric Desrochers (slashd) wrote :

Look like it didn't land in the 4.1 as it was supposed to based on the upstream milestone.
The bug is still open.

Feel free to circle back with upstream if needed.

I'll mark this as "incomplete" for now.

Regards,
Eric

Changed in sosreport (Ubuntu):
status: Triaged → Incomplete
Revision history for this message
Arif Ali (arif-ali) wrote :

Just circling back on this issue

Does the PR https://github.com/sosreport/sos/pull/3133 solve the issue for you at all?

Revision history for this message
Athos Ribeiro (athos-ribeiro) wrote :

I am moving this bug status back to triaged due to the potential fix. The next steps here would be to try that in a PPA to ensure it actually fixes the reported issue.

Changed in sosreport (Ubuntu):
status: Incomplete → Triaged
Revision history for this message
Arif Ali (arif-ali) wrote :

The version that it was fixed in was in 4.5.2

A snap is currently available with version 4.5.3, if indeed this helps

Also the current deb SRU [1] is also in motion, and you can test the packages from that LP and see if this helps

[1] https://launchpad.net/bugs/2018270

Revision history for this message
Andrea Ieri (aieri) wrote :

I have tested the sos snap (v4.5.3) and can confirm that the --low-priority option drops priority to the idle class, which fulfills the initial request. Thanks!

Revision history for this message
Arif Ali (arif-ali) wrote :

Thanks for confirming Andrea

I will put this as Fix Committed, and once the deb is released, I will put this as resolved

Changed in sosreport (Ubuntu):
status: Triaged → Fix Committed
Revision history for this message
Arif Ali (arif-ali) wrote :

This was released in 4.5.6 for f,j,l,m series

Changed in sosreport (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.