[PATCH v4 0/3] mm: improve zone->lock scalability

From: Aaron Lu
Date: Thu Mar 01 2018 - 01:27:56 EST


Patch 1/3 is a small cleanup suggested by Matthew Wilcox which doesn't
affect scalability or performance;
Patch 2/3 moves some code in free_pcppages_bulk() outside of zone->lock
and has Mel Gorman's ack;
Patch 3/3 uses prefetch in free_pcppages_bulk() outside of zone->lock to
speedup page merging under zone->lock but Mel Gorman has some concerns.

For details, please see their changelogs.

v4:
Address David Rientjes' comments to not update pcp->count in front of
free_pcppages_bulk() in patch 1/3.
Reword code comments in patch 2/3 as suggested by David Rientjes.

v3:
Added patch 1/3 to update pcp->count inside of free_pcppages_bulk();
Rebase to v4.16-rc2.

v2 & v1:
https://lkml.org/lkml/2018/1/23/879

Aaron Lu (3):
mm/free_pcppages_bulk: update pcp->count inside
mm/free_pcppages_bulk: do not hold lock when picking pages to free
mm/free_pcppages_bulk: prefetch buddy while not holding lock

mm/page_alloc.c | 62 +++++++++++++++++++++++++++++++++++++--------------------
1 file changed, 40 insertions(+), 22 deletions(-)

--
2.14.3