Linux 5.4 To Expose What's Keeping The System Awake Via Sysfs
With Linux 5.4, wakeup source statistics will now be exposed under /sys/class/wakeup/wakeup*/ for tracking wakeups, their counts, and related bits for profiling the system for power usage optimizations.
Suspend-blocking wakeup sources have been available under DebugFS to be useful for bug reporting and analyzing battery consumption. This solidifies the work now under Sysfs with a stable ABI. In addition to the interfaces now stable in adding them to sysfs, it makes them more accessible compared to DebugFS often being restricted to root or other restrictions in place by different distribution kernels.
The wakeup source stats information has been helpful in particular to Google/Android developers but hopefully will see more usage and tooling around it now on sysfs. The work is queued as part of the power management changes expected for Linux 5.4.