On 2/22/21 5:51 AM, Oscar Salvador wrote:
alloc_contig_range() will fail if it finds a HugeTLB page within the range,
without a chance to handle them. Since HugeTLB pages can be migrated as any
LRU or Movable page, it does not make sense to bail out without trying.
Enable the interface to recognize in-use HugeTLB pages so we can migrate
them, and have much better chances to succeed the call.
Signed-off-by: Oscar Salvador <osalvador@suse.de>
---
include/linux/hugetlb.h | 5 +++--
mm/compaction.c | 12 +++++++++++-
mm/hugetlb.c | 21 +++++++++++++++++----
mm/vmscan.c | 5 +++--
4 files changed, 34 insertions(+), 9 deletions(-)
Thanks,
Changes look good. I like the simple retry one time for pages which may
go from free to in use.
Reviewed-by: Mike Kravetz <redacted>
BTW,
This series will need to be rebased on latest which has hugetlb page flag
changes. Should be as simple as:
s/PageHugeFreed/HPageFreed/
--
Mike Kravetz