Re: [PATCH v2]oom-kill: CAP_SYS_RESOURCE should get bonus

From: David Rientjes
Date: Tue Nov 09 2010 - 16:25:59 EST


On Tue, 9 Nov 2010, David Rientjes wrote:

> I didn't check earlier, but CAP_SYS_RESOURCE hasn't had a place in the oom
> killer's heuristic in over five years, so what regression are we referring
> to in this thread? These tasks already have full control over
> oom_score_adj to modify its oom killing priority in either direction.
>

Yes, CAP_SYS_RESOURCE was a part of the heuristic in 2.6.25 along with
CAP_SYS_ADMIN and was removed with the rewrite; when I said it "hasn't had
a place in the oom killer's heuristic," I meant it's an unnecessary
extention to CAP_SYS_ADMIN and allows for killing innocent tasks when a
CAP_SYS_RESOURCE task is using too much memory.

The fundamental issue here is whether or not we should give a bonus to
CAP_SYS_RESOURCE tasks because they are, by definition, allowed to access
extra resources and we're willing to sacrifice other tasks for that. This
is antagonist to the oom killer's sole goal, however, which is to kill the
task consuming the largest amount of memory unless protected by userspace
(which CAP_SYS_RESOURCE has completely control in doing).

Since these threads have complete ability to give themselves this bonus
(echo -30 > /proc/self/oom_score_adj), I don't think this needs to be a
part of the core heuristic nor with such an arbitrary value of 3% (the old
heuristic divided its badness score by 4, another arbitrary value).
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/