kselftest: cpufreq: Get rid of double suspend in rtcwake case
authorNícolas F. R. A. Prado <nfraprado@collabora.com>
Wed, 30 Apr 2025 14:55:49 +0000 (10:55 -0400)
committerShuah Khan <skhan@linuxfoundation.org>
Fri, 9 May 2025 18:43:39 +0000 (12:43 -0600)
commit23b88515a318680337f21d0a2fceee8038ccffc8
tree053351b7ba566da6581fe9dc62e82db076a4f9df
parent8ffe772076bbb6828e28705bda93ac37c8d7294c
kselftest: cpufreq: Get rid of double suspend in rtcwake case

Commit 0b631ed3ce92 ("kselftest: cpufreq: Add RTC wakeup alarm") added
support for automatic wakeup in the suspend routine of the cpufreq
kselftest by using rtcwake, however it left the manual power state
change in the common path. The end result is that when running the
cpufreq kselftest with '-t suspend_rtc' or '-t hibernate_rtc', the
system will go to sleep and be woken up by the RTC, but then immediately
go to sleep again with no wakeup programmed, so it will sleep forever in
an automated testing setup.

Fix this by moving the manual power state change so that it only happens
when not using rtcwake.

Link: https://lore.kernel.org/r/20250430-ksft-cpufreq-suspend-rtc-double-fix-v1-1-dc17a729c5a7@collabora.com
Fixes: 0b631ed3ce92 ("kselftest: cpufreq: Add RTC wakeup alarm")
Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
tools/testing/selftests/cpufreq/cpufreq.sh