From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from bedivere.hansenpartnership.com ([66.63.167.143]:58440 "EHLO bedivere.hansenpartnership.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754234AbdBGUFM (ORCPT ); Tue, 7 Feb 2017 15:05:12 -0500 Message-ID: <1486497908.2488.64.camel@HansenPartnership.com> Subject: Re: [RFC 1/1] shiftfs: uid/gid shifting bind mount From: James Bottomley To: Christoph Hellwig Cc: Amir Goldstein , Djalal Harouni , Chris Mason , Theodore Tso , Josh Triplett , "Eric W. Biederman" , Andy Lutomirski , Seth Forshee , linux-fsdevel , linux-kernel , LSM List , Dongsu Park , David Herrmann , Miklos Szeredi , Alban Crequy , Al Viro , "Serge E. Hallyn" , Phil Estes Date: Tue, 07 Feb 2017 12:05:08 -0800 In-Reply-To: <20170207194933.GB4393@infradead.org> References: <1486235880.2484.17.camel@HansenPartnership.com> <1486235972.2484.19.camel@HansenPartnership.com> <20170207091924.GA13995@infradead.org> <1486485440.2488.15.camel@HansenPartnership.com> <20170207181040.GA18551@infradead.org> <1486494123.2488.56.camel@HansenPartnership.com> <20170207194933.GB4393@infradead.org> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Tue, 2017-02-07 at 11:49 -0800, Christoph Hellwig wrote: > On Tue, Feb 07, 2017 at 11:02:03AM -0800, James Bottomley wrote: > > > Another option would be to require something like a project as > > > used > > > for project quotas as the root. This would also be conveniant as > > > it > > > could storge the used remapping tables. > > > > So this would be like the current project quota except set on a > > subtree? I could see it being done that way but I don't see what > > advantage it has over using flags in the subtree itself (the > > mapping is > > known based on the mount namespace, so there's really only a single > > bit > > of information to store). > > projects (which are the underling concept for project quotas) are > per-subtree in practice - the flag is set on an inode and then > all directories and files underneath inherit the project ID, > hardlinking outside a project is prohinited. OK, this is what I don't understand: how is something that's inode based limited to be per-subtree? The way I've seen the VFS operate it seems that any given inode (and indeed dentry) can appear in many subtrees so how do I limit them to just one? James