Re: [PATCH 1/2] selftests: x86: vdso_restorer: remove manual counting of pass/fail tests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 7/12/24 01:30, Muhammad Usama Anjum wrote:
Use kselftest wrapper to mark tests pass/fail instead of manually
counting.

You care combining two changes in the patch.

This is needed to return correct exit status. This also
improves readability and mainability.

Spelling - "mainability" - checkpatch would have helped you
catch this.

The change to return the correct error fine and but not the
change thaT ADDS DUPLICATE tap header.




Signed-off-by: Muhammad Usama Anjum <usama.anjum@xxxxxxxxxxxxx>
---
  tools/testing/selftests/x86/vdso_restorer.c | 20 +++++++-------------
  1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/tools/testing/selftests/x86/vdso_restorer.c b/tools/testing/selftests/x86/vdso_restorer.c
index fe99f24341554..8e173d71291f6 100644
--- a/tools/testing/selftests/x86/vdso_restorer.c
+++ b/tools/testing/selftests/x86/vdso_restorer.c
@@ -21,6 +21,7 @@
  #include <unistd.h>
  #include <syscall.h>
  #include <sys/syscall.h>
+#include "../kselftest.h"
/* Open-code this -- the headers are too messy to easily use them. */
  struct real_sigaction {
@@ -44,9 +45,10 @@ static void handler_without_siginfo(int sig)
int main()
  {
-	int nerrs = 0;
  	struct real_sigaction sa;
+ ksft_print_header();

The problem with adding this header here is when
make kselftest TARGETS=vDSO is run there will be
duplicate TAP 13 headers.


+
  	void *vdso = dlopen("linux-vdso.so.1",
  			    RTLD_LAZY | RTLD_LOCAL | RTLD_NOLOAD);
  	if (!vdso)
@@ -57,6 +59,8 @@ int main()
  		return 0;
  	}
+ ksft_set_plan(2);
+
  	memset(&sa, 0, sizeof(sa));
  	sa.handler = handler_with_siginfo;
  	sa.flags = SA_SIGINFO;
@@ -69,12 +73,7 @@ int main()
raise(SIGUSR1); - if (handler_called) {
-		printf("[OK]\tSA_SIGINFO handler returned successfully\n");
-	} else {
-		printf("[FAIL]\tSA_SIGINFO handler was not called\n");
-		nerrs++;
-	}
+	ksft_test_result(handler_called, "SA_SIGINFO handler returned\n");
printf("[RUN]\tRaise a signal, !SA_SIGINFO, sa.restorer == NULL\n"); @@ -86,10 +85,5 @@ int main() raise(SIGUSR1); - if (handler_called) {
-		printf("[OK]\t!SA_SIGINFO handler returned successfully\n");
-	} else {
-		printf("[FAIL]\t!SA_SIGINFO handler was not called\n");
-		nerrs++;
-	}
+	ksft_test_result(handler_called, "SA_SIGINFO handler returned\n");
  }

thanks,
-- Shuah




[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux