Re: [patch v2] mm, tmp: only collapse hugepages to nodes with affinity for zone_reclaim_mode

From: David Rientjes
Date: Wed Jul 16 2014 - 20:49:46 EST


On Wed, 16 Jul 2014, Vlastimil Babka wrote:

> >> @@ -2545,6 +2571,11 @@ static int khugepaged_scan_pmd(struct mm_struct *mm,
> >> * hit record.
> >> */
> >> node = page_to_nid(page);
> >> + if (node != last_node) {
> >> + if (khugepaged_scan_abort(node))
> >> + goto out_unmap;
> >
> > Nitpick: How about not break the loop but only reset the related
> > khugepaged_node_load[] to zero. E.g. modify khugepaged_scan_abort() like
> > this:
> > if (node_distance(nid, i) > RECLAIM_DISTANCE)
> > khugepaged_node_load[i] = 0;
> >
> > By this way, we may have a chance to find a more suitable node.
>
> Hm theoretically there might be a suitable node, but this approach wouldn't
> work. By resetting it to zero you forget that there ever was node 'i'. If there
> is no more base page from node 'i', the load remains zero and the next call with
> 'nid' will think that 'nid' is OK.
>

Right, the suggestion is wrong because we do not want to ever collapse to
a node when the distance from the source page is > RECLAIM_DISTANCE,
that's the entire point of the patch.
--
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/