selftests: sync: ksft_exit_pass() does not return
authorNathan Chancellor <nathan@kernel.org>
Wed, 24 Apr 2024 17:24:10 +0000 (10:24 -0700)
committerShuah Khan <skhan@linuxfoundation.org>
Mon, 6 May 2024 19:57:21 +0000 (13:57 -0600)
After commit f7d5bcd35d42 ("selftests: kselftest: Mark functions that
unconditionally call exit() as __noreturn"), ksft_exit_...() functions
are marked as __noreturn, which means the return type should not be
'int' but 'void' because they are not returning anything (and never were
since exit() has always been called).

To facilitate updating the return type of these functions, remove
'return' before the call to ksft_exit_pass(), as __noreturn prevents the
compiler from warning that a caller of ksft_exit_pass() does not return
a value because the program will terminate upon calling these functions
(which is what the comment alluded to as well).

Reviewed-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
tools/testing/selftests/sync/sync_test.c

index 414a617db9933138c1ada1812b67a7d38d8e144f..93db5aa246a36ba8d3747ea818f2493be6ec1158 100644 (file)
@@ -109,6 +109,5 @@ int main(void)
                ksft_exit_fail_msg("%d out of %d sync tests failed\n",
                                        err, ksft_test_num());
 
-       /* need this return to keep gcc happy */
-       return ksft_exit_pass();
+       ksft_exit_pass();
 }