Re: [PATCH v2]mm/oom-kill: direct hardware access processes shouldget bonus

From: Figo.zhang
Date: Wed Nov 10 2010 - 09:49:27 EST


On Tue, 2010-11-09 at 13:16 -0800, David Rientjes wrote:
> On Tue, 9 Nov 2010, Figo.zhang wrote:
>
> >
> > the victim should not directly access hardware devices like Xorg server,
> > because the hardware could be left in an unpredictable state, although
> > user-application can set /proc/pid/oom_score_adj to protect it. so i think
> > those processes should get 3% bonus for protection.
> >
>
> The logic here is wrong: if killing these tasks can leave hardware in an
> unpredictable state (and that state is presumably harmful), then they
> should be completely immune from oom killing since you're still leaving
> them exposed here to be killed.

we let the processes with hardware access get bonus for protection. the
goal is not select them to be killed as possible.


>
> So the question that needs to be answered is: why do these threads deserve
> to use 3% more memory (not >4%) than others without getting killed? If
> there was some evidence that these threads have a certain quantity of
> memory they require as a fundamental attribute of CAP_SYS_RAWIO, then I
> have no objection, but that's going to be expressed in a memory quantity
> not a percentage as you have here.
>
> The CAP_SYS_ADMIN heuristic has a background: it is used in the oom killer
> because we have used the same 3% in __vm_enough_memory() for a long time
> and we want consistency amongst the heuristics. Adding additional bonuses
> with arbitrary values like 3% of memory for things like CAP_SYS_RAWIO
> makes the heuristic less predictable and moves us back toward the old
> heuristic which was almost entirely arbitrary.


yes, i think it is be better those processes which be protection maybe
divided the badness score by 4, like old heuristic.




--
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/