Messages in this thread | | | Date | Mon, 28 Sep 2015 16:00:09 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] pidns: fix set/getpriority and ioprio_set/get in PRIO_USER mode |
| |
On Fri, 25 Sep 2015 00:32:28 -0500 ebiederm@xmission.com (Eric W. Biederman) wrote:
> bsegall@google.com writes: > > > ebiederm@xmission.com (Eric W. Biederman) writes: > > > >> Andrew Morton <akpm@linux-foundation.org> writes: > >> > >>> On Wed, 16 Sep 2015 12:58:04 -0700 bsegall@google.com wrote: > >>> > >>>> setpriority(PRIO_USER, 0, x) will change the priority of tasks outside > >>>> of the current pid namespace. This is in contrast to both the other > >>>> modes of setpriority and the example of kill(-1). Fix this. getpriority > >>>> and ioprio have the same failure mode, fix them too. > >>> > >>> (cc Eric) > >> (cc Containers) > >> > >> Interesting. Strictly speaking the current behavior is not wrong. > >> Searching for all threads with a given uid has nothing to do with pids > >> so the pid namespace not limiting them is natural. > >> > >> In practice I don't think anyone cares either way (except people with > >> one color or another of security hat on) so this might be a change we > >> can actually make. > >> > >> In general it is probably better not to share uids and gids between > >> containers. > >> > >> Ben do you have a use case where this actually matters? Or was this a > >> case of "That looks wrong..."? > >> > >> Eric > > > > I believe we generally want this for isolation of a process, without > > requiring root initially (and a non-trivial uid_map, not to mention > > creating the extra users, requires root). There are probably other holes > > in using namespaces like this, but are they intended? > > After some more thinking about it this patch sounds justifiable. > > My goal with namespaces is not to build perfect isolation mechanisms > as that can get into ill defined territory, but to build well defined > mechanisms. And to handle the corner cases so you can use only > a single namespace with well defined results. > > In this case you have found the two interfaces I am aware of that > identify processes by uid instead of by pid. Which quite frankly is > weird. Unfortunately the weird unexpected cases are hard to handle > in the usual way. > > I was hoping for a little more information. Changes like this one we > have to be careful of because someone might be depending on the current > behavior. I don't think they are and I do think this make sense as part > of the pid namespace. > > Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
My copy of the getpriority/setpriority manpage doesn't mention interaction with namespaces at all. Should it do so?
| |