diff options
author | Shuah Khan (Samsung OSG) <shuah@kernel.org> | 2018-05-02 18:37:00 -0400 |
---|---|---|
committer | Shuah Khan (Samsung OSG) <shuah@kernel.org> | 2018-05-30 17:21:52 -0400 |
commit | 423353a11e9a36885d113722168cf4343eef4dff (patch) | |
tree | 47f0f20ec9f0cd82393c67b8e1b6329c4b33a658 /tools | |
parent | 5104acdb9f3a71691e714ce6863b17bd64fb5440 (diff) |
selftests: breakpoints: return Kselftest Skip code for skipped tests
When step_after_suspend_test is skipped because of unmet dependencies
and/or unsupported configuration, it exits with error which is treated
as a fail by the Kselftest framework. This leads to false negative result
even when the test could not be run.
Change it to return kselftest skip code when a test gets skipped to clearly
report that the test could not be run.
Change it to use ksft_exit_skip() when a non-root user runs the test and
add an explicit check for root and a clear message, instead of failing
the test when /sys/power/state file open fails.
Signed-off-by: Shuah Khan (Samsung OSG) <shuah@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/testing/selftests/breakpoints/step_after_suspend_test.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/tools/testing/selftests/breakpoints/step_after_suspend_test.c b/tools/testing/selftests/breakpoints/step_after_suspend_test.c index 3fece06e9f64..f82dcc1f8841 100644 --- a/tools/testing/selftests/breakpoints/step_after_suspend_test.c +++ b/tools/testing/selftests/breakpoints/step_after_suspend_test.c | |||
@@ -143,10 +143,14 @@ void suspend(void) | |||
143 | int err; | 143 | int err; |
144 | struct itimerspec spec = {}; | 144 | struct itimerspec spec = {}; |
145 | 145 | ||
146 | if (getuid() != 0) | ||
147 | ksft_exit_skip("Please run the test as root - Exiting.\n"); | ||
148 | |||
146 | power_state_fd = open("/sys/power/state", O_RDWR); | 149 | power_state_fd = open("/sys/power/state", O_RDWR); |
147 | if (power_state_fd < 0) | 150 | if (power_state_fd < 0) |
148 | ksft_exit_fail_msg( | 151 | ksft_exit_fail_msg( |
149 | "open(\"/sys/power/state\") failed (is this test running as root?)\n"); | 152 | "open(\"/sys/power/state\") failed %s)\n", |
153 | strerror(errno)); | ||
150 | 154 | ||
151 | timerfd = timerfd_create(CLOCK_BOOTTIME_ALARM, 0); | 155 | timerfd = timerfd_create(CLOCK_BOOTTIME_ALARM, 0); |
152 | if (timerfd < 0) | 156 | if (timerfd < 0) |