- Add skip test if  not run as root, with an
  appropriate Warning.

- Add 'ksft_print_header()' and 'ksft_set_plan()'
 to structure test outputs more effectively.

Test logs :

Before change:

- Without root
 error: unshare, errno 1

- With root
 No, output

After change:

- Without root
TAP version 13
1..1

- With root
TAP version 13
1..1

Signed-off-by: Shivam Chaudhary <[email protected]>
---

Notes:

                Changes in v4 1/2: 
                                - Start a patchset
                                - Split patch into smaller pathes to make it 
easy to review.
                
                link to v3: 
https://lore.kernel.org/all/[email protected]/

                Changes in v3:
                                - Remove extra ksft_set_plan()
                                - Remove function for unshare()
                                - Fix the comment style

                link to v2: 
https://lore.kernel.org/all/[email protected]/

                Changes in v2:
                                - Make the commit message more clear.

                link to v1: 
https://lore.kernel.org/all/[email protected]/T/#u



 tools/testing/selftests/tmpfs/bug-link-o-tmpfile.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/tools/testing/selftests/tmpfs/bug-link-o-tmpfile.c 
b/tools/testing/selftests/tmpfs/bug-link-o-tmpfile.c
index b5c3ddb90942..cdab1e8c0392 100644
--- a/tools/testing/selftests/tmpfs/bug-link-o-tmpfile.c
+++ b/tools/testing/selftests/tmpfs/bug-link-o-tmpfile.c
@@ -23,10 +23,23 @@
 #include <sys/mount.h>
 #include <unistd.h>
 
+#include "../kselftest.h"
+
 int main(void)
 {
        int fd;
 
+       /* Setting up kselftest framework */
+       ksft_print_header();
+       ksft_set_plan(1);
+
+       /* Check if test is run as root */
+       if (geteuid()) {
+               ksft_print_msg("Skip : Need to run as root");
+               exit(KSFT_SKIP);
+
+       }
+
        if (unshare(CLONE_NEWNS) == -1) {
                if (errno == ENOSYS || errno == EPERM) {
                        fprintf(stderr, "error: unshare, errno %d\n", errno);
-- 
2.45.2


Reply via email to