Messages in this thread | | | From | Linus Torvalds <> | Date | Fri, 18 Aug 2017 09:55:56 -0700 | Subject | Re: [PATCH 1/2] sched/wait: Break up long wake list walk |
| |
On Fri, Aug 18, 2017 at 5:23 AM, Mel Gorman <mgorman@techsingularity.net> wrote: > > new_page = alloc_pages_node(node, > - (GFP_TRANSHUGE_LIGHT | __GFP_THISNODE), > + (GFP_TRANSHUGE_LIGHT | __GFP_THISNODE) & ~__GFP_DIRECT_RECLAIM, > HPAGE_PMD_ORDER);
That can't make any difference. We already have:
#define GFP_TRANSHUGE_LIGHT ((GFP_HIGHUSER_MOVABLE | __GFP_COMP | \ __GFP_NOMEMALLOC | __GFP_NOWARN) & ~__GFP_RECLAIM)
and that "& ~__GFP_RECLAIM" is removing __GFP_DIRECT_RECLAIM.
So that patch is a no-op, afaik.
Is there something else expensive in there?
It *might* be simply that we have a shit-ton of threads, and the thread that holds the page lock for migration is just preempted out. even if it doesn't really do anything particularly expensive.
Linus
| |