ANDROID: implement wrapper for reverse migration

Reverse migration is used to do the balancing the occupancy of memory
zones in a node in the system whose imabalance may be caused by
migration of pages to other zones by an operation, eg: hotremove and
then hotadding the same memory. In this case there is a lot of free
memory in newly hotadd memory which can be filled up by the previous
migrated pages(as part of offline/hotremove) thus may free up some
pressure in other zones of the node.

Upstream discussion: https://lore.kernel.org/all/ee78c83d-da9b-f6d1-4f66-934b7782acfb@codeaurora.org/

Change-Id: Ib3137dab0db66ecf6858c4077dcadb9dfd0c6b1c
Bug: 201263307
Signed-off-by: Charan Teja Reddy <quic_charante@quicinc.com>
This commit is contained in:
Charan Teja Reddy
2021-02-16 13:59:45 +05:30
committed by Suren Baghdasaryan
parent c34dfc24e0
commit f47b852faa
5 changed files with 52 additions and 0 deletions

View File

@@ -168,6 +168,7 @@ void putback_movable_pages(struct list_head *l)
}
}
}
EXPORT_SYMBOL_GPL(putback_movable_pages);
/*
* Restore a potential migration pte to a working pte entry
@@ -1601,6 +1602,7 @@ out:
return rc;
}
EXPORT_SYMBOL_GPL(migrate_pages);
struct page *alloc_migration_target(struct page *page, unsigned long private)
{