On 6/26/25 13:16, Moon Hee Lee wrote:
The step_after_suspend_test verifies that the system successfully
suspended and resumed by setting a timerfd and checking whether the
timer fully expired. However, this method is unreliable due to timing
races.
In practice, the system may take time to enter suspend, during which the
timer may expire just before or during the transition. As a result,
the remaining time after resume may show non-zero nanoseconds, even if
suspend/resume completed successfully. This leads to false test failures.
Replace the timer-based check with a read from
/sys/power/suspend_stats/success. This counter is incremented only
after a full suspend/resume cycle, providing a reliable and race-free
indicator.
Also remove the unused file descriptor for /sys/power/state, which
remained after switching to a system() call to trigger suspend [1].
[1] https://lore.kernel.org/all/20240930224025.2858767-1-yifei.l....@oracle.com/
Fixes: c66be905cda2 ("selftests: breakpoints: use remaining time to check if suspend
succeed")
Signed-off-by: Moon Hee Lee <moonhee.lee...@gmail.com>
---
Applied to linux-kselftest next branch for Linux 6.17-rc1
thanks,
-- Shuah