From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752194AbdAaNXE (ORCPT ); Tue, 31 Jan 2017 08:23:04 -0500 Received: from SMTPBG353.QQ.COM ([183.57.50.164]:45045 "EHLO smtpbg.qq.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752002AbdAaNWs (ORCPT ); Tue, 31 Jan 2017 08:22:48 -0500 X-Greylist: delayed 322 seconds by postgrey-1.27 at vger.kernel.org; Tue, 31 Jan 2017 08:22:04 EST X-QQ-Spam: true X-QQ-mid: esmtp27t1485868105tl9hasq8i X-QQ-SSF: 01000000000000200G110300000000V From: ysxie@foxmail.com To: linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: n-horiguchi@ah.jp.nec.com, mhocko@suse.com, akpm@linux-foundation.org, minchan@kernel.org, vbabka@suse.cz, mgorman@techsingularity.net, hannes@cmpxchg.org, iamjoonsoo.kim@lge.com, izumi.taku@jp.fujitsu.com, arbab@linux.vnet.ibm.com, vkuznets@redhat.com, ak@linux.intel.com, guohanjun@huawei.com, qiuxishi@huawei.com Subject: [PATCH v5 0/4] HWPOISON: soft offlining for non-lru movable page Date: Tue, 31 Jan 2017 21:06:17 +0800 Message-Id: <1485867981-16037-1-git-send-email-ysxie@foxmail.com> X-Mailer: git-send-email 1.9.1 X-QQ-SENDSIZE: 520 Feedback-ID: esmtp:foxmail.com:bgweb:bgweb153 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Yisheng Xie Hi Andrew, Could you please help to abandon the v3 of this patch for it will compile error with CONFIG_MIGRATION=n, and it also has error path handling problem. I am so sorry about troubling you. 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 depend on non-lru movable page migration. -------- 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 | 11 +++++++---- mm/page_alloc.c | 8 ++++++-- 6 files changed, 50 insertions(+), 29 deletions(-) -- 1.9.1