From: Nickolai Zeldovich <nickolai@csail.mit.edu>
To: Christian Brauner <brauner@kernel.org>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>, Jan Kara <jack@suse.cz>,
Shuah Khan <shuah@kernel.org>, Jann Horn <jannh@google.com>,
Alexander Mikhalitsyn <alexander@mihalicyn.com>,
Luca Boccassi <luca.boccassi@gmail.com>,
linux-fsdevel@vger.kernel.org, linux-kselftest@vger.kernel.org,
linux-kernel@vger.kernel.org,
Nickolai Zeldovich <nickolai@csail.mit.edu>
Subject: [PATCH v2 0/2] pidfs: do not report fields that do not fit into the caller's struct
Date: Sat, 24 Oct 2026 00:13:32 -0400 [thread overview]
Message-ID: <20261024041334.831273-1-nickolai@csail.mit.edu> (raw)
In-Reply-To: <20261017020634.792390-1-nickolai@csail.mit.edu>
PIDFD_GET_INFO sets the mask bits of fields that lie beyond the struct
size the caller passed, although the uapi header promises that the mask
names no such field and tells userspace to rely on the mask. Patch 1
clears those bits before the copy. Patch 2 adds a selftest for it.
Tested in a QEMU x86_64 guest: the new test fails without patch 1 and
passes with it, and the other pidfd selftests give the same results with
and without patch 1. Built with W=1 for x86_64.
The bug was found and fixed with the assistance of an AI agent.
Changes in v2:
- Split the selftest into its own patch (Christian Brauner).
- Rebased onto current mainline. struct pidfd_info has no new fields
since v1, so the size checks are unchanged.
v1: https://lore.kernel.org/all/20261017020634.792390-1-nickolai@csail.mit.edu/
Nickolai Zeldovich (2):
pidfs: do not report fields that do not fit into the caller's struct
selftests/pidfd: test that fields beyond the struct size are not
reported
fs/pidfs.c | 8 ++++
tools/testing/selftests/pidfd/pidfd.h | 16 +++++++
.../testing/selftests/pidfd/pidfd_info_test.c | 48 +++++++++++++++++++
3 files changed, 72 insertions(+)
base-commit: 17bb0e2f6c8043f70a693a5f3797471cbed354c8
--
2.53.0
next prev parent reply other threads:[~2026-10-24 4:13 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-17 2:06 [PATCH v1] " Nickolai Zeldovich
2026-10-21 10:42 ` Christian Brauner
2026-10-24 4:13 ` Nickolai Zeldovich [this message]
2026-10-24 4:13 ` [PATCH v2 1/2] " Nickolai Zeldovich
2026-10-24 9:06 ` Luca Boccassi
2026-10-24 4:13 ` [PATCH v2 2/2] selftests/pidfd: test that fields beyond the struct size are not reported Nickolai Zeldovich
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=20261024041334.831273-1-nickolai@csail.mit.edu \
--to=nickolai@csail.mit.edu \
--cc=alexander@mihalicyn.com \
--cc=brauner@kernel.org \
--cc=jack@suse.cz \
--cc=jannh@google.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=luca.boccassi@gmail.com \
--cc=shuah@kernel.org \
--cc=viro@zeniv.linux.org.uk \
/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
all inboxes | Powered by JetHome®