__alloc_contig_migrate_range already has lru_add_drain_all call
via migrate_prep. It's necessary to move LRU taget pages into
LRU list to be able to isolated. However, lru_add_drain_all call
after __alloc_contig_migrate_range is pointless since it has changed
source page freeing from putback_lru_pages to put_page[1].
This patch removes it.
[1] c6c919eb90e0, ("mm: use put_page() to free page instead of
putback_lru_page()"
Reviewed-by: Oscar Salvador <[email protected]>
Acked-by: Vlastimil Babka <[email protected]>
Acked-by: Michal Hocko <[email protected]>
Signed-off-by: Minchan Kim <[email protected]>
---
* From v1 -
https://lore.kernel.org/linux-mm/[email protected]/
* add [Acked|Reviewed]-by - vbabka, mhocko, osalvador
* add history to the description - vbabka
mm/page_alloc.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index f10966e3b4a5..11579f0ddba9 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -8616,8 +8616,6 @@ int alloc_contig_range(unsigned long start, unsigned long
end,
* isolated thus they won't get removed from buddy.
*/
- lru_add_drain_all();
-
order = 0;
outer_start = start;
while (!PageBuddy(pfn_to_page(outer_start))) {
--
2.30.1.766.gb4fecdf3b7-goog