Re: [PATCH v7 7/7] enable building user namespace with xfs

Ben Myers
2013-07-31T13:25:27Z

Hey,

On Wed, Jul 31, 2013 at 10:21:19AM +1000, Dave Chinner wrote:
> On Tue, Jul 30, 2013 at 06:40:21PM -0500, Ben Myers wrote:
> > On Mon, Jul 29, 2013 at 11:07:09PM -0400, Dwight Engen wrote:
> > > >From e6a9ee0cfa0ed40484f66bc1726dc19de36038b8 Mon Sep 17 00:00:00 2001
> > > From: Dwight Engen <dwight.engen@oracle.com>
> > > Date: Tue, 2 Jul 2013 09:52:54 -0400
> > > Subject: [PATCH 7/7] enable building user namespace with xfs
> > >
> > > Signed-off-by: Dwight Engen <dwight.engen@oracle.com>
> >
> > Was there a patch running around to limit bulkstat to init_user_ns? Any other
> > items that needed to be addressed before applying this patch?
>
> Bulkstat has a capable(CAP_SYS_ADMIN) check and therefore can only be
> executed in the init name space. Similarly, all the open-by-handle
> interfaces have the same capable() checks so they can only be
> executed int he init name space, too.

Gah. I was under the impression that you could have a process with
CAP_SYS_ADMIN in a namespace other than init_user_ns.

> The only thing I think we still need to address is whether
> xfs_ioc_setattr() should allow users within a namespace to change
> the project ID of a file they otherwise own. That function is
> currently changed to use a inode_owner_or_capable() check and so if
> the uids match inside the namespace the modification is allowed.
>
> However, right now for project IDs I think we have decided to limit
> manipulations to the init user namespace and not expose project IDs
> inside user namespaces at all. Hence I think that xfs_ioc_setattr()
> needs a further check for this...

Looks like that should be added to patch 3. Dwight, if you prefer to repost
only patch 3 that's fine.

-Ben