[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJqdLrqjvitPqNYbfZx0-fsA6LCzVV6aatkCt2qAiQiGEXTLNg@mail.gmail.com>
Date: Tue, 4 Nov 2025 09:53:19 +0100
From: Alexander Mikhalitsyn <alexander@...alicyn.com>
To: Christian Brauner <brauner@...nel.org>
Cc: linux-fsdevel@...r.kernel.org, Oleg Nesterov <oleg@...hat.com>,
Amir Goldstein <amir73il@...il.com>, Aleksa Sarai <cyphar@...har.com>,
Yu Watanabe <watanabe.yu+github@...il.com>, Josef Bacik <josef@...icpanda.com>,
Jeff Layton <jlayton@...nel.org>, Jann Horn <jannh@...gle.com>,
Luca Boccassi <luca.boccassi@...il.com>, linux-kernel@...r.kernel.org,
Alexander Viro <viro@...iv.linux.org.uk>, Jan Kara <jack@...e.cz>,
Lennart Poettering <lennart@...ttering.net>, Mike Yuan <me@...dnzj.com>,
Zbigniew Jędrzejewski-Szmek <zbyszek@...waw.pl>
Subject: Re: [PATCH 11/22] selftests/pidfd: add second supported_mask test
Am Di., 28. Okt. 2025 um 09:46 Uhr schrieb Christian Brauner
<brauner@...nel.org>:
>
> Verify that supported_mask is returned even when other fields are
> requested.
>
> Signed-off-by: Christian Brauner <brauner@...nel.org>
Reviewed-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@...onical.com>
> ---
> tools/testing/selftests/pidfd/pidfd_info_test.c | 32 +++++++++++++++++++++++++
> 1 file changed, 32 insertions(+)
>
> diff --git a/tools/testing/selftests/pidfd/pidfd_info_test.c b/tools/testing/selftests/pidfd/pidfd_info_test.c
> index b31a0597fbae..cb5430a2fd75 100644
> --- a/tools/testing/selftests/pidfd/pidfd_info_test.c
> +++ b/tools/testing/selftests/pidfd/pidfd_info_test.c
> @@ -731,4 +731,36 @@ TEST(supported_mask_field)
> close(pidfd);
> }
>
> +/*
> + * Test: PIDFD_INFO_SUPPORTED_MASK always available
> + *
> + * Verify that supported_mask is returned even when other fields are requested.
> + */
> +TEST(supported_mask_with_other_fields)
> +{
> + struct pidfd_info info = {
> + .mask = PIDFD_INFO_CGROUPID | PIDFD_INFO_SUPPORTED_MASK,
> + };
> + int pidfd;
> + pid_t pid;
> +
> + pid = create_child(&pidfd, 0);
> + ASSERT_GE(pid, 0);
> +
> + if (pid == 0)
> + pause();
> +
> + ASSERT_EQ(ioctl(pidfd, PIDFD_GET_INFO, &info), 0);
> +
> + /* Both fields should be present */
> + ASSERT_TRUE(!!(info.mask & PIDFD_INFO_CGROUPID));
> + ASSERT_TRUE(!!(info.mask & PIDFD_INFO_SUPPORTED_MASK));
> + ASSERT_NE(info.supported_mask, 0);
> +
> + /* Clean up */
> + sys_pidfd_send_signal(pidfd, SIGKILL, NULL, 0);
> + sys_waitid(P_PIDFD, pidfd, NULL, WEXITED);
> + close(pidfd);
> +}
> +
> TEST_HARNESS_MAIN
>
> --
> 2.47.3
>
Powered by blists - more mailing lists