Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1176349AbdDYIBz convert rfc822-to-8bit (ORCPT ); Tue, 25 Apr 2017 04:01:55 -0400 Received: from tyo161.gate.nec.co.jp ([114.179.232.161]:56927 "EHLO tyo161.gate.nec.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1176334AbdDYIBq (ORCPT ); Tue, 25 Apr 2017 04:01:46 -0400 From: Naoya Horiguchi To: Laurent Dufour CC: "linux-kernel@vger.kernel.org" , "linux-mm@kvack.org" , "akpm@linux-foundation.org" Subject: Re: [RFC 2/2] mm: skip HWPoisoned pages when onlining pages Thread-Topic: [RFC 2/2] mm: skip HWPoisoned pages when onlining pages Thread-Index: AQHSubgo8oshUeSQLUy7DwGiTLE8qaHVKc0A Date: Tue, 25 Apr 2017 08:00:53 +0000 Message-ID: <20170425080052.GB18194@hori1.linux.bs1.fc.nec.co.jp> References: <1492680362-24941-1-git-send-email-ldufour@linux.vnet.ibm.com> <1492680362-24941-3-git-send-email-ldufour@linux.vnet.ibm.com> In-Reply-To: <1492680362-24941-3-git-send-email-ldufour@linux.vnet.ibm.com> Accept-Language: en-US, ja-JP Content-Language: ja-JP X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.128.101.6] Content-Type: text/plain; charset="iso-2022-jp" Content-ID: <88B6E6BE5867D4419027A1B7F223473C@gisp.nec.co.jp> Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 X-TM-AS-MML: disable Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1172 Lines: 36 On Thu, Apr 20, 2017 at 11:26:02AM +0200, Laurent Dufour wrote: > The commit b023f46813cd ("memory-hotplug: skip HWPoisoned page when > offlining pages") skip the HWPoisoned pages when offlining pages, but > this should be skipped when onlining the pages too. > > Signed-off-by: Laurent Dufour > --- > mm/memory_hotplug.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c > index 6fa7208bcd56..20e1fadc2369 100644 > --- a/mm/memory_hotplug.c > +++ b/mm/memory_hotplug.c > @@ -942,6 +942,8 @@ static int online_pages_range(unsigned long start_pfn, unsigned long nr_pages, > if (PageReserved(pfn_to_page(start_pfn))) > for (i = 0; i < nr_pages; i++) { > page = pfn_to_page(start_pfn + i); > + if (PageHWPoison(page)) > + continue; Is it OK that PageReserved (set by __offline_isolated_pages for non-buddy hwpoisoned pages) still remains in this path? If online_pages_range() is the reverse operation of __offline_isolated_pages(), ClearPageReserved seems needed here. Thanks, Naoya Horiguchi > (*online_page_callback)(page); > onlined_pages++; > } > -- > 2.7.4 > >