Linux Kernel Selftest development
 help / color / mirror / Atom feed
From: "Günther Noack" <gnoack3000@gmail.com>
To: "Mickaël Salaün" <mic@digikod.net>
Cc: "Wang Yan" <wangyan01@kylinos.cn>,
	linux-kselftest@vger.kernel.org,
	"Günther Noack" <gnoack3000@gmail.com>,
	"Günther Noack" <gnoack@google.com>,
	linux-security-module@vger.kernel.org
Subject: [PATCH 00/27] landlock: Selftest fixes and cleanups
Date: Thu,  8 Oct 2026 16:25:29 +0200	[thread overview]
Message-ID: <20261008142604.39107-2-gnoack3000@gmail.com> (raw)

A collection of Landlock Selftest fixes
=======================================

This patch set is bundled together to be slightly less spammy,
but the patches are mostly independent.  The commits are ordered
such that the simpler and more orthogonal patches come earlier.

The patch set is LLM-assisted (and that turned out to be very useful
for spotting errors).  Needless to say, I have verified all commits by
hand, and reworked them where necessary.

The last few patches are a bit more cross-cutting and probably more
prone to merge conflicts, as they correct cases where we have been
using EXPECT and ASSERT in the wrong way (details in the commit
messages).  I believe that the rationale for each of these is
reasonable, but I am happy to discuss.

Motivation
==========

LLMs (and humans ;-)) have an unfortunate tendency to pick up and
replicate bad coding style patterns, so I hope that a broader cleanup
of the test style will avoid this spreading further.


When applying this patch set, please base it on a branch that has Wang
Yan's snprintf() patch in it [1], which I also support as a selftest
cleanup.

–Günther

[1] https://lore.kernel.org/all/20260626070016.61049-1-wangyan01@kylinos.cn/

Günther Noack (27):
  selftests/landlock: Propagate grandchild failures in unix_scoping
  selftests/landlock: Propagate EXPECT failures from forked children
  selftests/landlock: Check the thread result in audit.thread
  selftests/landlock: Zero-initialize the buffer in inconsistent_attr
  selftests/landlock: Fix the openat() success check in fs_bench
  selftests/landlock: Fix the reported clock tick rate in fs_bench
  selftests/landlock: Fix the ruleset_fd check in empty_or_same_ruleset
  selftests/landlock: Handle a missing control message in recv_fd()
  selftests/landlock: Assert tracefs_extract_field() results that are
    used
  selftests/landlock: Assert audit initialization in fixture setups
  selftests/landlock: Assert helper results that are used afterwards
  selftests/landlock: Assert audit_count_records() before using its
    result
  selftests/landlock: Fix memory leak in audit_init_filter_exe()
  selftests/landlock: Make audit_message large enough for any exe filter
  selftests/landlock: Close leaked file descriptors
  selftests/landlock: Check errno for combined VERSION and ERRATA flags
  selftests/landlock: Fix SIGURG handler setup in scoped_signal_test
  selftests/landlock: Fix regex_escape() error handling in
    matches_log_fs_extra()
  selftests/landlock: Fix off-by-one in regex_escape()
  selftests/landlock: Fix the snprintf() error check in
    matches_log_fs_extra()
  selftests/landlock: Use _exit() in the named_pipe_ioctl child
  selftests/landlock: Fix messages and comments in helper programs
  selftests/landlock: Fix stale comments in common.h and audit.h
  selftests/landlock: Use ASSERT for syscall failures before errno
    checks
  selftests/landlock: Assert WIFEXITED() before checking the exit status
  selftests/landlock: Use EXPECT for closing FDs and stopping threads
  selftests/landlock: Use EXPECT for checks that later steps do not need

 tools/testing/selftests/landlock/audit.h      |   20 +-
 tools/testing/selftests/landlock/audit_test.c |   56 +-
 tools/testing/selftests/landlock/base_test.c  |  190 +--
 tools/testing/selftests/landlock/common.h     |   32 +-
 tools/testing/selftests/landlock/fs_bench.c   |    5 +-
 tools/testing/selftests/landlock/fs_test.c    | 1300 +++++++++--------
 tools/testing/selftests/landlock/net_test.c   |   64 +-
 .../testing/selftests/landlock/ptrace_test.c  |   44 +-
 .../selftests/landlock/sandbox-and-launch.c   |    6 +-
 .../landlock/scoped_abstract_unix_test.c      |   45 +-
 .../selftests/landlock/scoped_signal_test.c   |   23 +-
 .../testing/selftests/landlock/scoped_test.c  |    2 +-
 .../selftests/landlock/trace_fs_test.c        |    8 +-
 tools/testing/selftests/landlock/trace_test.c |   26 +-
 tools/testing/selftests/landlock/tsync_test.c |   22 +-
 .../selftests/landlock/wait-pipe-sandbox.c    |   16 +-
 tools/testing/selftests/landlock/wait-pipe.c  |    2 +-
 17 files changed, 952 insertions(+), 909 deletions(-)

-- 
2.56.0


             reply	other threads:[~2026-10-08 14:26 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-08 14:25 Günther Noack [this message]
2026-10-08 14:25 ` [PATCH 01/27] selftests/landlock: Propagate grandchild failures in unix_scoping Günther Noack
2026-10-08 14:25 ` [PATCH 02/27] selftests/landlock: Propagate EXPECT failures from forked children Günther Noack
2026-10-08 14:25 ` [PATCH 03/27] selftests/landlock: Check the thread result in audit.thread Günther Noack
2026-10-08 14:25 ` [PATCH 04/27] selftests/landlock: Zero-initialize the buffer in inconsistent_attr Günther Noack
2026-10-08 14:25 ` [PATCH 05/27] selftests/landlock: Fix the openat() success check in fs_bench Günther Noack
2026-10-08 14:25 ` [PATCH 06/27] selftests/landlock: Fix the reported clock tick rate " Günther Noack
2026-10-08 14:25 ` [PATCH 07/27] selftests/landlock: Fix the ruleset_fd check in empty_or_same_ruleset Günther Noack
2026-10-08 14:25 ` [PATCH 08/27] selftests/landlock: Handle a missing control message in recv_fd() Günther Noack
2026-10-08 14:25 ` [PATCH 09/27] selftests/landlock: Assert tracefs_extract_field() results that are used Günther Noack
2026-10-08 14:25 ` [PATCH 10/27] selftests/landlock: Assert audit initialization in fixture setups Günther Noack
2026-10-08 14:25 ` [PATCH 11/27] selftests/landlock: Assert helper results that are used afterwards Günther Noack
2026-10-08 14:25 ` [PATCH 12/27] selftests/landlock: Assert audit_count_records() before using its result Günther Noack
2026-10-08 14:25 ` [PATCH 13/27] selftests/landlock: Fix memory leak in audit_init_filter_exe() Günther Noack
2026-10-08 14:25 ` [PATCH 14/27] selftests/landlock: Make audit_message large enough for any exe filter Günther Noack
2026-10-08 14:25 ` [PATCH 15/27] selftests/landlock: Close leaked file descriptors Günther Noack
2026-10-08 14:25 ` [PATCH 16/27] selftests/landlock: Check errno for combined VERSION and ERRATA flags Günther Noack
2026-10-08 14:25 ` [PATCH 17/27] selftests/landlock: Fix SIGURG handler setup in scoped_signal_test Günther Noack
2026-10-08 14:25 ` [PATCH 18/27] selftests/landlock: Fix regex_escape() error handling in matches_log_fs_extra() Günther Noack
2026-10-08 14:25 ` [PATCH 19/27] selftests/landlock: Fix off-by-one in regex_escape() Günther Noack
2026-10-08 14:25 ` [PATCH 20/27] selftests/landlock: Fix the snprintf() error check in matches_log_fs_extra() Günther Noack
2026-10-08 14:25 ` [PATCH 21/27] selftests/landlock: Use _exit() in the named_pipe_ioctl child Günther Noack
2026-10-08 14:25 ` [PATCH 22/27] selftests/landlock: Fix messages and comments in helper programs Günther Noack
2026-10-08 14:25 ` [PATCH 23/27] selftests/landlock: Fix stale comments in common.h and audit.h Günther Noack
2026-10-08 14:25 ` [PATCH 24/27] selftests/landlock: Use ASSERT for syscall failures before errno checks Günther Noack
2026-10-08 14:25 ` [PATCH 25/27] selftests/landlock: Assert WIFEXITED() before checking the exit status Günther Noack
2026-10-08 14:25 ` [PATCH 26/27] selftests/landlock: Use EXPECT for closing FDs and stopping threads Günther Noack
2026-10-08 14:25 ` [PATCH 27/27] selftests/landlock: Use EXPECT for checks that later steps do not need Günther Noack
2026-10-08 14:33 ` [PATCH 00/27] landlock: Selftest fixes and cleanups Günther Noack

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261008142604.39107-2-gnoack3000@gmail.com \
    --to=gnoack3000@gmail.com \
    --cc=gnoack@google.com \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=mic@digikod.net \
    --cc=wangyan01@kylinos.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox