[RFC,v2,0/3] Introduce infrastructure to report time in hardware sleep state

Message ID 20221110064723.8882-1-mario.limonciello@amd.com
Headers
Series Introduce infrastructure to report time in hardware sleep state |

Message

Mario Limonciello Nov. 10, 2022, 6:47 a.m. UTC
  Sven van Ashbrook brought a patch to the kernel mailing list that
attempted to change the reporting level of a s0ix entry issue to a
different debugging level so that infastructure used by Google could
better scan logs to catch problems.

This approach was rejected, but during the conversation another
suggestion was made by David E. Box to introduce some infrastructure
into the kernel to report this information.

As it's information that is reported by both AMD and Intel platforms
over s2idle, this seems to make sense.

This series introduces new sysfs files representing duration in a hardware
sleep state and total sleep duration.

The expectation is that userspace could read these file after s2idle
occurred to infer whta percentage of time was spent in a hardware sleep
state.

RFC v1->v2:
 * Rename sysfs file for time in hardware state
 * Export a sysfs file for total time in suspend
 * Only export sysfs file for hardware state if system supports low
   power idle.

Mario Limonciello (3):
  PM: Add a sysfs files to represent sleep duration
  platform/x86/amd: pmc: Report duration of time in deepest hw state
  platform/x86/intel/pmc: core: Report duration of time in deepest HW
    state

 Documentation/ABI/testing/sysfs-power | 17 +++++++++++
 drivers/platform/x86/amd/pmc.c        |  4 +--
 drivers/platform/x86/intel/pmc/core.c |  2 ++
 include/linux/suspend.h               |  5 ++++
 kernel/power/main.c                   | 42 +++++++++++++++++++++++++++
 kernel/power/suspend.c                |  2 ++
 kernel/time/timekeeping.c             |  2 ++
 7 files changed, 71 insertions(+), 3 deletions(-)