+ /* + * Gup-pinned pages are non-migratable. After subtracting these pages, + * we need to check if the remaining pages are sufficient for memory + * compaction. + */ + if ((sum - nr_pinned) < (1 << order)) + return false; +Looks reasonable to me, but let's see if other people have any comments.
Noting that Barry had some concerns as reply to v3. -- Cheers, David / dhildenb