lkml.org 
[lkml]   [2012]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 2/4] mm, oom: cleanup pagefault oom handler
On Thu, 15 Nov 2012, Kamezawa Hiroyuki wrote:

> > @@ -708,15 +671,17 @@ out:
> >
> > /*
> > * The pagefault handler calls here because it is out of memory, so kill a
> > - * memory-hogging task. If a populated zone has ZONE_OOM_LOCKED set, a
> > parallel
> > - * oom killing is already in progress so do nothing. If a task is found
> > with
> > - * TIF_MEMDIE set, it has been killed so do nothing and allow it to exit.
> > + * memory-hogging task. If any populated zone has ZONE_OOM_LOCKED set, a
> > + * parallel oom killing is already in progress so do nothing.
> > */
> > void pagefault_out_of_memory(void)
> > {
> > - if (try_set_system_oom()) {
> > + struct zonelist *zonelist = node_zonelist(first_online_node,
> > + GFP_KERNEL);
>
>
> why GFP_KERNEL ? not GFP_HIGHUSER_MOVABLE ?
>

The usual way to get a zonelist consisting of all zones ordered by
preferring a node is node_zonelist(nid, GFP_KERNEL), but there's no
difference between using GFP_KERNEL, GFP_HIGHUSER_MOVABLE, or even 0. I
simply duplicated what the sysrq trigger was doing, but you could also do
&first_online_pgdat->node_zonelists[0], it's really just a matter of
preference.


\
 
 \ /
  Last update: 2012-11-15 22:41    [W:0.046 / U:0.188 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site