selftests/kcmp: change test to use ksft framework
Change kcmp test to use kselftest framework to report test results and test statistics. Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
This commit is contained in:
parent
56661564e1
commit
e061bcd885
|
@ -17,6 +17,8 @@
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
|
|
||||||
|
#include "../kselftest.h"
|
||||||
|
|
||||||
static long sys_kcmp(int pid1, int pid2, int type, int fd1, int fd2)
|
static long sys_kcmp(int pid1, int pid2, int type, int fd1, int fd2)
|
||||||
{
|
{
|
||||||
return syscall(__NR_kcmp, pid1, pid2, type, fd1, fd2);
|
return syscall(__NR_kcmp, pid1, pid2, type, fd1, fd2);
|
||||||
|
@ -34,13 +36,13 @@ int main(int argc, char **argv)
|
||||||
|
|
||||||
if (fd1 < 0) {
|
if (fd1 < 0) {
|
||||||
perror("Can't create file");
|
perror("Can't create file");
|
||||||
exit(1);
|
ksft_exit_fail();
|
||||||
}
|
}
|
||||||
|
|
||||||
pid2 = fork();
|
pid2 = fork();
|
||||||
if (pid2 < 0) {
|
if (pid2 < 0) {
|
||||||
perror("fork failed");
|
perror("fork failed");
|
||||||
exit(1);
|
ksft_exit_fail();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!pid2) {
|
if (!pid2) {
|
||||||
|
@ -50,7 +52,7 @@ int main(int argc, char **argv)
|
||||||
fd2 = open(kpath, O_RDWR, 0644);
|
fd2 = open(kpath, O_RDWR, 0644);
|
||||||
if (fd2 < 0) {
|
if (fd2 < 0) {
|
||||||
perror("Can't open file");
|
perror("Can't open file");
|
||||||
exit(1);
|
ksft_exit_fail();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* An example of output and arguments */
|
/* An example of output and arguments */
|
||||||
|
@ -74,23 +76,34 @@ int main(int argc, char **argv)
|
||||||
if (ret) {
|
if (ret) {
|
||||||
printf("FAIL: 0 expected but %d returned (%s)\n",
|
printf("FAIL: 0 expected but %d returned (%s)\n",
|
||||||
ret, strerror(errno));
|
ret, strerror(errno));
|
||||||
|
ksft_inc_fail_cnt();
|
||||||
ret = -1;
|
ret = -1;
|
||||||
} else
|
} else {
|
||||||
printf("PASS: 0 returned as expected\n");
|
printf("PASS: 0 returned as expected\n");
|
||||||
|
ksft_inc_pass_cnt();
|
||||||
|
}
|
||||||
|
|
||||||
/* Compare with self */
|
/* Compare with self */
|
||||||
ret = sys_kcmp(pid1, pid1, KCMP_VM, 0, 0);
|
ret = sys_kcmp(pid1, pid1, KCMP_VM, 0, 0);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
printf("FAIL: 0 expected but %d returned (%s)\n",
|
printf("FAIL: 0 expected but %d returned (%s)\n",
|
||||||
ret, strerror(errno));
|
ret, strerror(errno));
|
||||||
|
ksft_inc_fail_cnt();
|
||||||
ret = -1;
|
ret = -1;
|
||||||
} else
|
} else {
|
||||||
printf("PASS: 0 returned as expected\n");
|
printf("PASS: 0 returned as expected\n");
|
||||||
|
ksft_inc_pass_cnt();
|
||||||
|
}
|
||||||
|
|
||||||
exit(ret);
|
ksft_print_cnts();
|
||||||
|
|
||||||
|
if (ret)
|
||||||
|
ksft_exit_fail();
|
||||||
|
else
|
||||||
|
ksft_exit_pass();
|
||||||
}
|
}
|
||||||
|
|
||||||
waitpid(pid2, &status, P_ALL);
|
waitpid(pid2, &status, P_ALL);
|
||||||
|
|
||||||
return 0;
|
return ksft_exit_pass();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue