Linux Kernel Selftest development
 help / color / mirror / Atom feed
* [PATCH v4 0/2] kselftest: tmpfs: Add ksft macros and skip if no root
@ 2024-11-05 20:26 Shivam Chaudhary
  2024-11-05 20:26 ` [PATCH v4 1/2] selftests:tmpfs: Add Skip test if not run as root Shivam Chaudhary
  2024-11-05 20:26 ` [PATCH v4 2/2] selftests: tmpfs: Add kselftest support to tmpfs Shivam Chaudhary
  0 siblings, 2 replies; 6+ messages in thread
From: Shivam Chaudhary @ 2024-11-05 20:26 UTC (permalink / raw)
  To: shuah; +Cc: linux-kselftest, linux-kernel, Shivam Chaudhary


This version 4 patch series replace direct error handling methods with ksft
macros, which provide better reporting.Currently, when the tmpfs test runs,
it does not display any output if it passes,and if it fails
(particularly when not run as root),it simply exits without any warning or message.

This series of patch adds:

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

2. Skip if not run as root.

3. Replace direct error handling with 'ksft_test_result_*',
   'ksft_print_msg' and KSFT_SKIP  macros for better reporting.

v3->v4:
         - Start a patchset
         - Split patch into smaller pathes to make it easy to review.
  Patch1 Replace  'ksft_test_result_skip' with 'KSFT_SKIP' during root run check.
  Patch2 Replace  'ksft_test_result_fail' with 'KSFT_SKIP' where fail does not make sense,
         or failure could be due to not unsupported APIs with appropriate warnings.
  

v3: https://lore.kernel.org/all/20241028185756.111832-1-cvam0000@gmail.com/

v2->v3:
        - Remove extra ksft_set_plan()
        - Remove function for unshare()
        - Fix the comment style
v2: https://lore.kernel.org/all/20241026191621.2860376-1-cvam0000@gmail.com/

v1->v2:
        - Make the commit message more clear.
v1: https://lore.kernel.org/all/20241024200228.1075840-1-cvam0000@gmail.com/T/#u


thanks 
Shivam

Shivam Chaudhary (2):
  selftests:tmpfs: Add Skip test if not run as root
  selftests:tmpfs: Add kselftest support to tmpfs

 .../selftests/tmpfs/bug-link-o-tmpfile.c      | 79 +++++++++++++++----
 1 file changed, 62 insertions(+), 17 deletions(-)

-- 
2.45.2

^ permalink raw reply	[flat|nested] 6+ messages in thread
* [PATCH v4 1/2] selftests:tmpfs: Add Skip test if not run as root
@ 2024-11-04  8:03 Shivam Chaudhary
  0 siblings, 0 replies; 6+ messages in thread
From: Shivam Chaudhary @ 2024-11-04  8:03 UTC (permalink / raw)
  To: skhan; +Cc: linux-kselftest, linux-kernel, Shivam Chaudhary

- 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 <cvam0000@gmail.com>
---

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/20241028185756.111832-1-cvam0000@gmail.com/

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

		link to v2: https://lore.kernel.org/all/20241026191621.2860376-1-cvam0000@gmail.com/

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

		link to v1: https://lore.kernel.org/all/20241024200228.1075840-1-cvam0000@gmail.com/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


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-11-06 17:06 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-05 20:26 [PATCH v4 0/2] kselftest: tmpfs: Add ksft macros and skip if no root Shivam Chaudhary
2024-11-05 20:26 ` [PATCH v4 1/2] selftests:tmpfs: Add Skip test if not run as root Shivam Chaudhary
2024-11-06 17:06   ` Shuah Khan
2024-11-05 20:26 ` [PATCH v4 2/2] selftests: tmpfs: Add kselftest support to tmpfs Shivam Chaudhary
2024-11-06 17:01   ` Shuah Khan
  -- strict thread matches above, loose matches on Subject: below --
2024-11-04  8:03 [PATCH v4 1/2] selftests:tmpfs: Add Skip test if not run as root Shivam Chaudhary

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox