From: Askar Safin <safinaskar@zohomail.com>
To: "Aleksa Sarai" <cyphar@cyphar.com>
Cc: "Alejandro Colomar" <alx@kernel.org>,
"Michael T. Kerrisk" <mtk.manpages@gmail.com>,
"Alexander Viro" <viro@zeniv.linux.org.uk>,
"Jan Kara" <jack@suse.cz>,
"G. Branden Robinson" <g.branden.robinson@gmail.com>,
"linux-man" <linux-man@vger.kernel.org>,
"linux-api" <linux-api@vger.kernel.org>,
"linux-fsdevel" <linux-fsdevel@vger.kernel.org>,
"linux-kernel" <linux-kernel@vger.kernel.org>,
"David Howells" <dhowells@redhat.com>,
"Christian Brauner" <brauner@kernel.org>
Subject: Re: [PATCH v2 05/11] fsconfig.2: document 'new' mount api
Date: Fri, 08 Aug 2025 18:00:43 +0400 [thread overview]
Message-ID: <19889fbe690.e80d252e42280.4347614991285137048@zohomail.com> (raw)
In-Reply-To: <20250807-new-mount-api-v2-5-558a27b8068c@cyphar.com>
Let's consider this example:
int fsfd, mntfd, nsfd, nsdirfd;
nsfd = open("/proc/self/ns/pid", O_PATH);
nsdirfd = open("/proc/1/ns", O_DIRECTORY);
fsfd = fsopen("proc", FSOPEN_CLOEXEC);
/* "pidns" changes the value each time. */
fsconfig(fsfd, FSCONFIG_SET_PATH, "pidns", "/proc/self/ns/pid", AT_FDCWD);
fsconfig(fsfd, FSCONFIG_SET_PATH, "pidns", "pid", NULL, nsdirfd);
fsconfig(fsfd, FSCONFIG_SET_PATH_EMPTY, "pidns", "", nsfd);
fsconfig(fsfd, FSCONFIG_SET_FD, "pidns", NULL, nsfd);
fsconfig(fsfd, FSCONFIG_CMD_CREATE, NULL, NULL, 0);
mntfd = fsmount(fsfd, FSMOUNT_CLOEXEC, 0);
move_mount(mntfd, "", AT_FDCWD, "/proc", MOVE_MOUNT_F_EMPTY_PATH);
I don't like it. /proc/self/ns/pid is our namespace, which is default anyway.
I. e. setting pidns to /proc/self/ns/pid is no-op (assuming that "pidns" option is implemented in our kernel, of course).
Moreover, if /proc is mounted properly, then /proc/1/ns/pid refers to our namespace, too!
Thus, *all* these fsconfig(FSCONFIG_SET_...) calls are no-op.
Thus it is bad example.
I suggest using, say, /proc/2/ns/pid . It has actual chance to refer to some other namespace.
Also, sentence '"pidns" changes the value each time' is a lie: as I explained, all these calls are no-ops,
they don't really change anything.
--
Askar Safin
https://types.pl/@safinaskar
next prev parent reply other threads:[~2025-08-08 14:01 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-06 17:44 [PATCH v2 00/11] man2: add man pages for 'new' mount API Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 01/11] mount_setattr.2: document glibc >= 2.36 syscall wrappers Aleksa Sarai
2025-08-07 10:39 ` Alejandro Colomar
2025-08-08 9:23 ` Askar Safin
2025-08-08 11:55 ` Aleksa Sarai
2025-08-09 10:42 ` Alejandro Colomar
2025-08-09 10:44 ` Alejandro Colomar
2025-08-06 17:44 ` [PATCH v2 02/11] mount_setattr.2: move mount_attr struct to mount_attr.2type Aleksa Sarai
2025-08-07 11:11 ` Alejandro Colomar
2025-08-07 12:38 ` Aleksa Sarai
2025-08-07 13:33 ` Alejandro Colomar
2025-08-06 17:44 ` [PATCH v2 03/11] fsopen.2: document 'new' mount api Aleksa Sarai
2025-08-07 11:38 ` Alejandro Colomar
2025-08-07 12:50 ` Aleksa Sarai
2025-08-07 13:42 ` Alejandro Colomar
2025-08-07 13:27 ` Aleksa Sarai
2025-08-07 13:52 ` Alejandro Colomar
2025-08-07 14:26 ` Aleksa Sarai
2025-08-07 19:27 ` Konstantin Ryabitsev
2025-08-07 19:39 ` Aleksa Sarai
2025-08-08 9:07 ` Askar Safin
2025-08-08 11:57 ` Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 04/11] fspick.2: " Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 05/11] fsconfig.2: " Aleksa Sarai
2025-08-08 14:00 ` Askar Safin [this message]
2025-08-08 15:22 ` Aleksa Sarai
2025-08-08 19:07 ` Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 06/11] fsmount.2: " Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 07/11] move_mount.2: " Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 08/11] open_tree.2: " Aleksa Sarai
2025-08-08 12:32 ` Askar Safin
2025-08-08 13:26 ` Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 09/11] mount_setattr.2: mirror opening sentence from fsopen(2) Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 10/11] open_tree_attr.2, open_tree.2: document new open_tree_attr() api Aleksa Sarai
2025-08-06 17:44 ` [PATCH v2 11/11] fsconfig.2, mount_setattr.2: add note about attribute-parameter distinction Aleksa Sarai
2025-08-08 12:53 ` [PATCH v2 00/11] man2: add man pages for 'new' mount API Christian Brauner
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=19889fbe690.e80d252e42280.4347614991285137048@zohomail.com \
--to=safinaskar@zohomail.com \
--cc=alx@kernel.org \
--cc=brauner@kernel.org \
--cc=cyphar@cyphar.com \
--cc=dhowells@redhat.com \
--cc=g.branden.robinson@gmail.com \
--cc=jack@suse.cz \
--cc=linux-api@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-man@vger.kernel.org \
--cc=mtk.manpages@gmail.com \
--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;
as well as URLs for NNTP newsgroup(s).