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/ Port to ACK6.6: Fold in following simple fixes from ACK6.1: commit d0652b3a ("ANDROID: inline isolate_and_split_free_page") commit 8a98feb4 ("ANDROID: mm: compaction: fix isolate_and_split_free_page() redefinition") Port to ACK6.12: Make below changes to patch: 1. Move isolate_and_split_free_page() into mm/page_alloc to be able to make use of split_free_pages() [1]. The @list argument is also now an array of lists based on page order on account of switching to the split_free_pages API. 2. isolate_lru_page is also deprecated. Hence isolate_anon_lru_page() is now using folio_isolate_lru() which is the folio equivalent. [1] https://lore.kernel.org/all/20240814035451.773331-1-yuzhao@google.com/T/#u Bug: 201263307 Signed-off-by:Charan Teja Reddy <quic_charante@quicinc.com> Signed-off-by:
Sukadev Bhattiprolu <quic_sukadev@quicinc.com> Change-Id: Ib3137dab0db66ecf6858c4077dcadb9dfd0c6b1c
Loading
Please sign in to comment