public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
* [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues
@ 2026-04-06 13:30 Jinseok Kim
  2026-04-06 13:31 ` [LTP] [PATCH 2/2] close: add test for double close EBADF Jinseok Kim
  2026-04-09  8:08 ` [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues Petr Vorel
  0 siblings, 2 replies; 4+ messages in thread
From: Jinseok Kim @ 2026-04-06 13:30 UTC (permalink / raw)
  To: ltp

Remove unused headers (<stdio.h>, <errno.h>, <sys/stat.h>) from close01.c
and (<stdio.h>, <sys/stat.h>) from close02.c.

Also make struct test_case_t static and apply minor style fixes.

Signed-off-by: Jinseok Kim <always.starving0@gmail.com>
---
 testcases/kernel/syscalls/close/close01.c | 6 ++----
 testcases/kernel/syscalls/close/close02.c | 2 --
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/testcases/kernel/syscalls/close/close01.c b/testcases/kernel/syscalls/close/close01.c
index 4e4f107ef..616752595 100644
--- a/testcases/kernel/syscalls/close/close01.c
+++ b/testcases/kernel/syscalls/close/close01.c
@@ -8,10 +8,7 @@
  * Test that closing a file/pipe/socket works correctly.
  */

-#include <stdio.h>
-#include <errno.h>
 #include <fcntl.h>
-#include <sys/stat.h>
 #include "tst_test.h"

 #define FILENAME "close01_testfile"
@@ -24,6 +21,7 @@ static int get_fd_file(void)
 static int get_fd_pipe(void)
 {
 	int pipefildes[2];
+
 	SAFE_PIPE(pipefildes);
 	SAFE_CLOSE(pipefildes[1]);
 	return pipefildes[0];
@@ -34,7 +32,7 @@ static int get_fd_socket(void)
 	return SAFE_SOCKET(AF_INET, SOCK_STREAM, 0);
 }

-struct test_case_t {
+static struct test_case_t {
 	int (*get_fd) ();
 	char *type;
 } tc[] = {
diff --git a/testcases/kernel/syscalls/close/close02.c b/testcases/kernel/syscalls/close/close02.c
index 2016453f8..617c48237 100644
--- a/testcases/kernel/syscalls/close/close02.c
+++ b/testcases/kernel/syscalls/close/close02.c
@@ -8,9 +8,7 @@
  * Call close(-1) and expects it to return EBADF.
  */

-#include <stdio.h>
 #include <errno.h>
-#include <sys/stat.h>
 #include "tst_test.h"

 static void run(void)
--
2.43.0

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

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

* [LTP] [PATCH 2/2] close: add test for double close EBADF
  2026-04-06 13:30 [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues Jinseok Kim
@ 2026-04-06 13:31 ` Jinseok Kim
  2026-04-09  8:15   ` Petr Vorel
  2026-04-09  8:08 ` [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues Petr Vorel
  1 sibling, 1 reply; 4+ messages in thread
From: Jinseok Kim @ 2026-04-06 13:31 UTC (permalink / raw)
  To: ltp

Verify that calling close() on an already closed file descriptor fails
with EBADF.

The existing close tests cover:
- close01: successful close on valid file descriptors
- close02: invalid file descriptor (-1)

This test adds coverage for a common state transition case where a
previously valid file descriptor becomes invalid after close().

Signed-off-by: Jinseok Kim <always.starving0@gmail.com>
---
 runtest/syscalls                           |  1 +
 testcases/kernel/syscalls/close/.gitignore |  1 +
 testcases/kernel/syscalls/close/close03.c  | 26 ++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 100644 testcases/kernel/syscalls/close/close03.c

diff --git a/runtest/syscalls b/runtest/syscalls
index 5a2e8f048..71c2b9ec5 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -134,6 +134,7 @@ clone304 clone304

 close01 close01
 close02 close02
+close03 close03

 close_range01 close_range01
 close_range02 close_range02
diff --git a/testcases/kernel/syscalls/close/.gitignore b/testcases/kernel/syscalls/close/.gitignore
index 07d25bccf..1ed7e45cf 100644
--- a/testcases/kernel/syscalls/close/.gitignore
+++ b/testcases/kernel/syscalls/close/.gitignore
@@ -1,2 +1,3 @@
 /close01
 /close02
+/close03
diff --git a/testcases/kernel/syscalls/close/close03.c b/testcases/kernel/syscalls/close/close03.c
new file mode 100644
index 000000000..38950d00c
--- /dev/null
+++ b/testcases/kernel/syscalls/close/close03.c
@@ -0,0 +1,26 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright (C) 2026 Jinseok Kim <always.starving0@gmail.com>
+ */
+
+/*\
+ * Verify that calling close() twice on the same fd returns EBADF on
+ * the second call.
+ */
+
+#include <errno.h>
+#include <fcntl.h>
+#include "tst_test.h"
+
+static void run(void)
+{
+	int fd = SAFE_OPEN("close03", O_CREAT, 0600);
+
+	TST_EXP_PASS(close(fd));
+	TST_EXP_FAIL(close(fd), EBADF);
+}
+
+static struct tst_test test = {
+	.needs_tmpdir = 1,
+	.test_all = run,
+};
--
2.43.0

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

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

* Re: [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues
  2026-04-06 13:30 [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues Jinseok Kim
  2026-04-06 13:31 ` [LTP] [PATCH 2/2] close: add test for double close EBADF Jinseok Kim
@ 2026-04-09  8:08 ` Petr Vorel
  1 sibling, 0 replies; 4+ messages in thread
From: Petr Vorel @ 2026-04-09  8:08 UTC (permalink / raw)
  To: Jinseok Kim; +Cc: ltp

Hi Jinseok,

> Remove unused headers (<stdio.h>, <errno.h>, <sys/stat.h>) from close01.c
> and (<stdio.h>, <sys/stat.h>) from close02.c.

> Also make struct test_case_t static and apply minor style fixes.

Thanks, patch merged.

Kind regards,
Petr

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

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

* Re: [LTP] [PATCH 2/2] close: add test for double close EBADF
  2026-04-06 13:31 ` [LTP] [PATCH 2/2] close: add test for double close EBADF Jinseok Kim
@ 2026-04-09  8:15   ` Petr Vorel
  0 siblings, 0 replies; 4+ messages in thread
From: Petr Vorel @ 2026-04-09  8:15 UTC (permalink / raw)
  To: Jinseok Kim; +Cc: ltp

> Verify that calling close() on an already closed file descriptor fails
> with EBADF.

> The existing close tests cover:
> - close01: successful close on valid file descriptors
> - close02: invalid file descriptor (-1)

> This test adds coverage for a common state transition case where a
> previously valid file descriptor becomes invalid after close().

IMHO it'd make sense to add this errno check to close02.c (using .tcnt).

...
> --- /dev/null
> +++ b/testcases/kernel/syscalls/close/close03.c
> @@ -0,0 +1,26 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later
> +/*
> + * Copyright (C) 2026 Jinseok Kim <always.starving0@gmail.com>
> + */
> +
> +/*\
> + * Verify that calling close() twice on the same fd returns EBADF on

Please instead of close() use:
:manpage:`close(2)`

That will provide link to man page
https://man7.org/linux/man-pages/man2/close.2.html

in our test catalog:
https://linux-test-project.readthedocs.io/en/latest/users/test_catalog.html

Kind regards,
Petr

> + * the second call.
> + */
> +
> +#include <errno.h>
> +#include <fcntl.h>
> +#include "tst_test.h"
> +
> +static void run(void)
> +{
> +	int fd = SAFE_OPEN("close03", O_CREAT, 0600);
> +
> +	TST_EXP_PASS(close(fd));
> +	TST_EXP_FAIL(close(fd), EBADF);
> +}
> +
> +static struct tst_test test = {
> +	.needs_tmpdir = 1,
> +	.test_all = run,
> +};

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

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

end of thread, other threads:[~2026-04-09  8:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-06 13:30 [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues Jinseok Kim
2026-04-06 13:31 ` [LTP] [PATCH 2/2] close: add test for double close EBADF Jinseok Kim
2026-04-09  8:15   ` Petr Vorel
2026-04-09  8:08 ` [LTP] [PATCH 1/2] close: remove unused headers and fix minor style issues Petr Vorel

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