Util-Linux package development
 help / color / mirror / Atom feed
From: "Yuriy M. Kaminskiy" <yumkam@gmail.com>
To: util-linux@vger.kernel.org
Subject: Re: unshare -m and mount propagation
Date: Mon, 18 Apr 2016 16:05:29 +0300	[thread overview]
Message-ID: <5714DB99.50806@gmail.com> (raw)
In-Reply-To: <20160418122238.o645avvzj2tzzwsd@ws.net.home>

On 18.04.2016 15:22, Karel Zak wrote:
> On Mon, Apr 18, 2016 at 02:51:37PM +0300, Yuriy M. Kaminskiy wrote:
>> Karel Zak <kzak@redhat.com> writes:
>>
>>> On Fri, Mar 18, 2016 at 05:26:25AM +0300, Yuriy M. Kaminskiy wrote:
>>>> I think this issue should be at least documented. And, maybe, default
>>>> `--propagation` should be changed to `slave`.
>>>
>>> The reason why we use 'private' is that it's the kernel default for
>>> years and it's what has been expected by users for long time before we
>>> introduced --propagation and any unshare(1) default.
>>>
>>> The current --propagation default unifies things and makes unshare(1)
>>> portable to distributions where root fs is mounted as 'shared' (e.g.
>>> systemd distros) and all this in backwardly compatible way for users

Opposite. It does not change anything for older systems, but breaks 
things for new systems.

>>> who have no clue about --propagation.

And it is *especially* harmful for users that are not aware about 
--propagation. As private (new 2.27+ default) break umount propagation, 
and results in nasty surprises (up to data loss).

>>> So, I don't think we want to change any default to corrupt scripts where
>>> is no explicitly specified --propagation.
>>
>> By you already broke scripts that expected old a-la '--propagation
>> unchanged' behavior.
>
> Only if your system uses something else that kernel default 'private'
> and you depend on this non-default setting. (IMHO relatively small
> groups of users)

All systemd systems use shared. Which is not "small group of users".

> The old "--propagation unchanged" makes unshare useless on some
> mainstream distros where default is 'shared'.

No, it is not. --propagation does not do *anything* that cannot be done 
without it. On pre-2.27 util-linux,

   unshare -m sh -c 'mount --make-rprivate /; ...'

does exactly same as `unshare -m [--propagation=private] ...` in 2.27+.

Reverse is not true! With 2.27 you *must* use new 
[backward-incompatible] options to revert to sane behavior [which is 
*slave*, not *private*].

> Anyway, we will not change any default now.

  reply	other threads:[~2016-04-18 13:05 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-18  2:26 unshare -m and mount propagation Yuriy M. Kaminskiy
2016-04-18 11:16 ` Karel Zak
2016-04-18 11:51   ` Yuriy M. Kaminskiy
2016-04-18 12:22     ` Karel Zak
2016-04-18 13:05       ` Yuriy M. Kaminskiy [this message]
2016-04-18 17:48         ` Karel Zak
2016-04-18 20:35           ` Yuriy M. Kaminskiy

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=5714DB99.50806@gmail.com \
    --to=yumkam@gmail.com \
    --cc=util-linux@vger.kernel.org \
    /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