[v5.12-rc2 regression] io_uring: high CPU use after suspend-to-ram

From: Kevin Locke
Date: Tue Mar 09 2021 - 21:02:07 EST


With kernel 5.12-rc2 (and torvalds/master 144c79ef3353), if mpd is
playing or paused when my system is suspended-to-ram, when the system is
resumed mpd will consume ~200% CPU until killed. It continues to
produce audio and respond to pause/play commands, which do not affect
CPU usage. This occurs with either pulse (to PulseAudio or
PipeWire-as-PulseAudio) or alsa audio_output.

The issue appears to have been introduced by a combination of two
commits: 3bfe6106693b caused freeze on suspend-to-ram when mpd is paused
or playing. e4b4a13f4941 fixed suspend-to-ram, but introduced the high
CPU on resume.

I attempted to further diagnose using `perf record -p $(pidof mpd)`.
Running for about a minute after resume shows ~280 MMAP2 events and
almost nothing else. I'm not sure what to make of that or how to
further investigate.

Let me know if there's anything else I can do to help diagnose/test.

Thanks,
Kevin