• B
    pidns: fix set/getpriority and ioprio_set/get in PRIO_USER mode · 8639b461
    Ben Segall 提交于
    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.
    
    Eric said:
    
    : 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.
    Signed-off-by: NBen Segall <bsegall@google.com>
    Cc: Oleg Nesterov <oleg@redhat.com>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Ambrose Feinstein <ambrose@google.com>
    Acked-by: N"Eric W. Biederman" <ebiederm@xmission.com>
    Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
    8639b461
ioprio.c 5.1 KB