On 2025-08-22, Askar Safin <safinaskar@xxxxxxxxxxxx> wrote: > My edit is based on experiments and reading Linux code > > Signed-off-by: Askar Safin <safinaskar@xxxxxxxxxxxx> > --- > man/man2/mount.2 | 21 ++++++++++++++++++--- > 1 file changed, 18 insertions(+), 3 deletions(-) > > diff --git a/man/man2/mount.2 b/man/man2/mount.2 > index 5d83231f9..909b82e88 100644 > --- a/man/man2/mount.2 > +++ b/man/man2/mount.2 > @@ -405,7 +405,19 @@ flag can be used with > to modify only the per-mount-point flags. > .\" See https://lwn.net/Articles/281157/ > This is particularly useful for setting or clearing the "read-only" > -flag on a mount without changing the underlying filesystem. > +flag on a mount without changing flags of the underlying filesystem. For obvious reasons, I would prefer the term "filesystem parameters" here but mount(2) is kind of loose with its terminology... > +The > +.I data > +argument is ignored if > +.B MS_REMOUNT > +and > +.B MS_BIND > +are specified. > +The > +.I mountflags > +should specify existing per-mount-point flags, > +except for those parameters > +that are deliberately changed. I would phrase this more like a note to make the advice a bit clearer: Note that the mountpoint will have its existing per-mount-point flags cleared and replaced with those in .I mountflags when .B MS_REMOUNT and .B MS_BIND are specified. This means that if you wish to preserve any existing per-mount-point flags (which can be retrieved using .BR statfs (2)), you need to include them in .IR mountflags , along with the per-mount-point flags you wish to set (or with the flags you wish to clear missing). (Still a bit too wordy, there's probably a nicer way of writing it...) It might also be a good idea to reference locked mount flags (which are explained in more detail in mount_namespaces(7)) since they are very relevant to the text you're adding about MS_REMOUNT|MS_BIND. The current docs only mention locked mounts once and the description is kind of insufficient (it implies that only MS_REMOUNT affects this, and that it's related to the mount being locked -- neither is really true). When dealing with a mount with locked flags, remembering to include existing mount attributes is very important. > Specifying > .I mountflags > as: > @@ -416,8 +428,11 @@ MS_REMOUNT | MS_BIND | MS_RDONLY > .EE > .in > .P > -will make access through this mountpoint read-only, without affecting > -other mounts. > +will make access through this mountpoint read-only > +(and clear all other per-mount-point flags), (clearing all other per-mount-point flags) > +without affecting > +other mounts > +of this filesystem. > .\" > .SS Creating a bind mount > If -- Aleksa Sarai Senior Software Engineer (Containers) SUSE Linux GmbH https://www.cyphar.com/
Attachment:
signature.asc
Description: PGP signature