Hi Michal, Minchan and all, Could you please help to review it? Any suggestion is more than welcome. And Thanks for all of you. After Minchan's commit bda807d44454 ("mm: migrate: support non-lru movable page migration"), some type of non-lru page like zsmalloc and virtio-balloon page also support migration. Therefore, we can: 1) soft offlining no-lru movable pages, which means when memory corrected errors occur on a non-lru movable page, we can stop to use it by migrating data onto another page and disable the original (maybe half-broken) one. 2) enable memory hotplug for non-lru movable pages, i.e. we may offline blocks, which include such pages, by using non-lru page migration. This patchset is heavily dependent on non-lru movable page migration. -------- v6: * just return -EBUSY for isolate_movable_page when it failed to isolate a non-lru movable page, which suggested by Minchan. v5: * change the return type of isolate_movable_page() from bool to int as Michal's suggestion. * add "enable memory hotplug for non-lru movable pages" to this patchset, which also make some change as Michal's suggestion here. v4: * make isolate_movable_page always defined to avoid compile error with CONFIG_MIGRATION = n * return -EBUSY when isolate_movable_page return false which means failed to isolate movable page. v3: * delete some unneed limitation and use !__PageMovable instead of PageLRU after isolate page to avoid isolated count mismatch, as Minchan Kim's suggestion. v2: * delete function soft_offline_movable_page() and hanle non-lru movable page in __soft_offline_page() as Michal Hocko suggested. Yisheng Xie (4): mm/migration: make isolate_movable_page() return int type mm/migration: make isolate_movable_page always defined HWPOISON: soft offlining for non-lru movable page mm/hotplug: enable memory hotplug for non-lru movable pages include/linux/migrate.h | 4 +++- mm/compaction.c | 2 +- mm/memory-failure.c | 26 ++++++++++++++++---------- mm/memory_hotplug.c | 28 +++++++++++++++++----------- mm/migrate.c | 6 +++--- mm/page_alloc.c | 8 ++++++-- 6 files changed, 46 insertions(+), 28 deletions(-) -- 1.7.12.4 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>