diff --git a/mm/migrate.c b/mm/migrate.c index 0413596fc523..0e9888cb33ad 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -911,7 +911,7 @@ static int fallback_migrate_page(struct address_space *mapping, */ if (page_has_private(page) && !try_to_release_page(page, GFP_KERNEL)) - return -EAGAIN; + return mode == MIGRATE_SYNC ? -EAGAIN : -EBUSY; return migrate_page(mapping, newpage, page, mode); }