On Fri, Jul 15, 2016 at 10:47:06AM +0800, Xishi Qiu wrote: > alloc_migrate_target() is called from migrate_pages(), and the page > is always from user space, so we can add __GFP_HIGHMEM directly.
No, all migratable pages are not from user space. For example, blockdev file cache has __GFP_MOVABLE and migratable but it has no __GFP_HIGHMEM and __GFP_USER. And, zram's memory isn't GFP_HIGHUSER_MOVABLE but has __GFP_MOVABLE. Thanks.