diff options
author | Shuah Khan (Samsung OSG) <shuah@kernel.org> | 2018-05-03 18:21:20 -0400 |
---|---|---|
committer | Shuah Khan (Samsung OSG) <shuah@kernel.org> | 2018-05-30 17:21:52 -0400 |
commit | 7357dcf2ef2811156fdf223a9a27f73528934e1f (patch) | |
tree | 37d0d42e89ee81b947bc174f0959dab6955af5fc | |
parent | 964224d7a861955a07080e3acff481f6ff772546 (diff) |
selftests: filesystems: return Kselftest Skip code for skipped tests
When devpts_pts 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.
In another case, it returns pass for a skipped test reporting a false
postive.
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 test is skipped.
Signed-off-by: Shuah Khan (Samsung OSG) <shuah@kernel.org>
Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
Signed-off-by: Shuah Khan (Samsung OSG) <shuah@kernel.org>
-rw-r--r-- | tools/testing/selftests/filesystems/devpts_pts.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/tools/testing/selftests/filesystems/devpts_pts.c b/tools/testing/selftests/filesystems/devpts_pts.c index b2712b16d7fd..b1fc9b916ace 100644 --- a/tools/testing/selftests/filesystems/devpts_pts.c +++ b/tools/testing/selftests/filesystems/devpts_pts.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <asm/ioctls.h> | 11 | #include <asm/ioctls.h> |
12 | #include <sys/mount.h> | 12 | #include <sys/mount.h> |
13 | #include <sys/wait.h> | 13 | #include <sys/wait.h> |
14 | #include "../kselftest.h" | ||
14 | 15 | ||
15 | static bool terminal_dup2(int duplicate, int original) | 16 | static bool terminal_dup2(int duplicate, int original) |
16 | { | 17 | { |
@@ -125,10 +126,12 @@ static int do_tiocgptpeer(char *ptmx, char *expected_procfd_contents) | |||
125 | if (errno == EINVAL) { | 126 | if (errno == EINVAL) { |
126 | fprintf(stderr, "TIOCGPTPEER is not supported. " | 127 | fprintf(stderr, "TIOCGPTPEER is not supported. " |
127 | "Skipping test.\n"); | 128 | "Skipping test.\n"); |
128 | fret = EXIT_SUCCESS; | 129 | fret = KSFT_SKIP; |
130 | } else { | ||
131 | fprintf(stderr, | ||
132 | "Failed to perform TIOCGPTPEER ioctl\n"); | ||
133 | fret = EXIT_FAILURE; | ||
129 | } | 134 | } |
130 | |||
131 | fprintf(stderr, "Failed to perform TIOCGPTPEER ioctl\n"); | ||
132 | goto do_cleanup; | 135 | goto do_cleanup; |
133 | } | 136 | } |
134 | 137 | ||
@@ -281,7 +284,7 @@ int main(int argc, char *argv[]) | |||
281 | if (!isatty(STDIN_FILENO)) { | 284 | if (!isatty(STDIN_FILENO)) { |
282 | fprintf(stderr, "Standard input file descriptor is not attached " | 285 | fprintf(stderr, "Standard input file descriptor is not attached " |
283 | "to a terminal. Skipping test\n"); | 286 | "to a terminal. Skipping test\n"); |
284 | exit(EXIT_FAILURE); | 287 | exit(KSFT_SKIP); |
285 | } | 288 | } |
286 | 289 | ||
287 | ret = unshare(CLONE_NEWNS); | 290 | ret = unshare(CLONE_NEWNS); |