All of lore.kernel.org
 help / color / mirror / Atom feed
From: ebiederm@xmission.com (Eric W. Biederman)
To: Miklos Szeredi <miklos@szeredi.hu>
Cc: serue@us.ibm.com, akpm@linux-foundation.org, hch@infradead.org,
	viro@ZenIV.linux.org.uk, linux-fsdevel@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: unprivileged mounts git tree
Date: Thu, 11 Sep 2008 12:04:41 -0700	[thread overview]
Message-ID: <m17i9icxme.fsf@frodo.ebiederm.org> (raw)
In-Reply-To: <E1KdnOb-00068L-Eq@pomaz-ex.szeredi.hu> (Miklos Szeredi's message of "Thu, 11 Sep 2008 16:43:45 +0200")

Miklos Szeredi <miklos@szeredi.hu> writes:

> On Thu, 11 Sep 2008, ebiederm@xmission.com (Eric W. Biederman)
>> There is a weird corner case I'm trying to wrap my head around.
>> unlink and rmdir do not work on dentries that are mount points
>> in another mount namespace.
>> 
>> Which is at least needed for the moment so we don't leak mounts.
>> 
>> Once we have unprivileged mounts does that introduce a DOS attack?
>
> Hmm, yes.  That's a tough one...
>
> I think if the dentry has only user mounts, unlink should go ahead and
> on success dissolve any mounts on the dentry.  Does that sound
> workable?

I don't think only user mounts is the right filter.

We have support for lazy unmounts so it is possible to handle
that case.

Technically all we need to do is transform d_mounted from a counter
to a hlist_head and thread yet another list through struct vfs_mount
to track this.

I need to think about the semantics a little more before I have a good
feel of what makes sense.  In particular do we want a full
recursive lazy unmount or do we want to handle submounts in a different
way.

This also intersects in interesting ways with dcache pruning, and
automounting.

Eric

  parent reply	other threads:[~2008-09-11 19:15 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-07 12:05 unprivileged mounts git tree Miklos Szeredi
2008-08-07 22:27 ` Serge E. Hallyn
2008-08-08  0:07   ` Eric W. Biederman
2008-08-08  0:25     ` Serge E. Hallyn
2008-08-25 11:01       ` Miklos Szeredi
2008-08-27 15:36         ` Serge E. Hallyn
2008-08-27 15:55           ` Miklos Szeredi
2008-08-27 18:46             ` Serge E. Hallyn
2008-09-03 18:45               ` Miklos Szeredi
2008-09-03 21:54                 ` Serge E. Hallyn
2008-09-03 22:02                 ` Serge E. Hallyn
2008-09-03 22:25                   ` Miklos Szeredi
2008-09-03 22:43                     ` Serge E. Hallyn
2008-09-04  6:42                       ` Miklos Szeredi
2008-09-04 13:28                         ` Serge E. Hallyn
2008-09-04 14:06                           ` Miklos Szeredi
2008-09-04 15:40                             ` Miklos Szeredi
2008-09-04 16:17                               ` Serge E. Hallyn
2008-09-04 17:42                                 ` Miklos Szeredi
2008-09-04 17:48                                   ` Serge E. Hallyn
2008-09-04 18:03                                     ` Miklos Szeredi
2008-09-04 18:49                                       ` Serge E. Hallyn
2008-09-04 22:26                                         ` Miklos Szeredi
2008-09-04 23:32                                           ` Serge E. Hallyn
2008-09-05 15:31                               ` Serge E. Hallyn
2008-09-09 13:34                                 ` Miklos Szeredi
2008-09-11 10:37                                   ` Eric W. Biederman
2008-09-11 14:43                                     ` Miklos Szeredi
2008-09-11 15:20                                       ` Serge E. Hallyn
2008-09-11 15:44                                         ` Miklos Szeredi
2008-09-11 18:54                                         ` Eric W. Biederman
2008-09-12 22:08                                           ` Serge E. Hallyn
2008-09-13  3:12                                             ` Eric W. Biederman
2008-09-14  1:56                                               ` Serge E. Hallyn
2008-09-14  3:06                                                 ` Eric W. Biederman
2008-09-30 19:39                                                   ` Serge E. Hallyn
2008-10-06 11:05                                                     ` Miklos Szeredi
2008-09-11 19:04                                       ` Eric W. Biederman [this message]
2008-09-11 19:58                                         ` Eric W. Biederman

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=m17i9icxme.fsf@frodo.ebiederm.org \
    --to=ebiederm@xmission.com \
    --cc=akpm@linux-foundation.org \
    --cc=hch@infradead.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    --cc=serue@us.ibm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.