Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7357dcf2 authored by Shuah Khan (Samsung OSG)'s avatar Shuah Khan (Samsung OSG)
Browse files

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: default avatarShuah Khan (Samsung OSG) <shuah@kernel.org>
Acked-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
Signed-off-by: default avatarShuah Khan (Samsung OSG) <shuah@kernel.org>
parent 964224d7
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@
#include <asm/ioctls.h>
#include <sys/mount.h>
#include <sys/wait.h>
#include "../kselftest.h"

static bool terminal_dup2(int duplicate, int original)
{
@@ -125,10 +126,12 @@ static int do_tiocgptpeer(char *ptmx, char *expected_procfd_contents)
		if (errno == EINVAL) {
			fprintf(stderr, "TIOCGPTPEER is not supported. "
					"Skipping test.\n");
			fret = EXIT_SUCCESS;
			fret = KSFT_SKIP;
		} else {
			fprintf(stderr,
				"Failed to perform TIOCGPTPEER ioctl\n");
			fret = EXIT_FAILURE;
		}

		fprintf(stderr, "Failed to perform TIOCGPTPEER ioctl\n");
		goto do_cleanup;
	}

@@ -281,7 +284,7 @@ int main(int argc, char *argv[])
	if (!isatty(STDIN_FILENO)) {
		fprintf(stderr, "Standard input file descriptor is not attached "
				"to a terminal. Skipping test\n");
		exit(EXIT_FAILURE);
		exit(KSFT_SKIP);
	}

	ret = unshare(CLONE_NEWNS);