From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C6D4EB64D7 for ; Wed, 28 Jun 2023 11:06:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 210538D0002; Wed, 28 Jun 2023 07:06:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1C0098D0001; Wed, 28 Jun 2023 07:06:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0AFBE8D0002; Wed, 28 Jun 2023 07:06:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id F03A88D0001 for ; Wed, 28 Jun 2023 07:06:29 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id BC0E9120246 for ; Wed, 28 Jun 2023 11:06:29 +0000 (UTC) X-FDA: 80951878098.30.1FBC6B7 Received: from out-25.mta0.migadu.com (out-25.mta0.migadu.com [91.218.175.25]) by imf09.hostedemail.com (Postfix) with ESMTP id BFAB214001E for ; Wed, 28 Jun 2023 11:06:27 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=L6LUItET; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf09.hostedemail.com: domain of naoya.horiguchi@linux.dev designates 91.218.175.25 as permitted sender) smtp.mailfrom=naoya.horiguchi@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1687950388; a=rsa-sha256; cv=none; b=ABEN+AruymkLUJnTsvaSvGrAD4Q6BueubklwCjwU4zcMBQjyJD7fsuJirMJxlco4w/sIWN CVjf24dnQbx3NxMpw5SEKKjICQauhAJxzscTSd0DDirPXAbrsSOqh4x/EdD7V76MsY3aMX hWsuBtKxc6hcle79PBCeWqIrQMZd7F0= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=L6LUItET; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf09.hostedemail.com: domain of naoya.horiguchi@linux.dev designates 91.218.175.25 as permitted sender) smtp.mailfrom=naoya.horiguchi@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1687950388; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Jc0/jL+hYp/3hJv3ILK0z0s0gv31nbCXGARkyWsaWLc=; b=dU6HWyPsz1K/GJpVys2WT3V1TiGVpfmfIP/TBF8nij2ZNCyxCcxtxxE0nqUFO0i9BsJkSX iwZaBr2BBnpeRLI8nAh/L9U3KnXMp8YkpVNqOn1ahCKBJakdbDDVQ76O84+d66xHUiO8yX MSE8988BPXdbsEnjQl2AOYuCk8/wGCg= Date: Wed, 28 Jun 2023 20:06:18 +0900 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1687950385; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Jc0/jL+hYp/3hJv3ILK0z0s0gv31nbCXGARkyWsaWLc=; b=L6LUItETXqY8PfyYcU02Fy+BNporGYYQpyhwjgGQ8NCrcQuUWyyIonqg0KRp6/ADWnrIJP FMLkHKgqaRZaZ5YVz/05PDvFBgMswj8pAgeSCyrcFnsTDguB5rwe2uMDRyVA2eH0Qqdj0F QLk4Thdr7IHkBbdlhE0BvK2FQ4d2DLc= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Naoya Horiguchi To: Miaohe Lin Cc: Andrew Morton , naoya.horiguchi@nec.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] mm: memory-failure: fix unexpected return value in soft_offline_page() Message-ID: <20230628110618.GA1248243@ik1-406-35019.vs.sakura.ne.jp> References: <20230627112808.1275241-1-linmiaohe@huawei.com> <20230627123046.ef7e791208214bbfecd71e42@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: BFAB214001E X-Stat-Signature: rxrq9d6jrw8ebwj3bd8ukw3foiqyfcs7 X-HE-Tag: 1687950387-302860 X-HE-Meta: U2FsdGVkX1/1dNvwfskQZNPfEpvV74iDwaggeG66eKuQVkY4OT/uoMDU+CQKDnUPSs+B88D8Ch8pIJZYxSc83Xh28HGngNl27gOKT6B6jSJdOoLw7VoHF70SuMISoU4VifSjTe2KPb9ulTAnfbN4Sa5G8zrZaOqt/wJafMtUr5tmkKgHa9mz9OXY8CSAw6Ub38zqEt9HHn2DKlnlBJtln2MvNMhEn3cFdwuYphadbIGGwO7Jv7vB0m6FreoEFjt87VCmC2pjJt5liHM3zr0AHGQvzOuN9BjoM6j4TRk7tWAUbK6uuo05uAzikKSbDVLLQGfOqeGyBH/M5oaQ3Xnqg/ovcOscNvwEXViVxD8kXF6TncbAJF0BPB9DTngzTh3X0C9XE9AuqYlA2PSLHA3+HYjmRyLcPjEC4Z0/eScMSFlKAHw+uNn6PcZX2cM9d8EG6hs4fOiQJESN6gSjW+U1SCFwX7Xywivv8oBCj7sFD9krbXUj+f1UNnn128w3sxsTZMPVqmShjRPS+FTTP+SL+36jJ8LysC1lSXZtwChF8f9IOyiUMThQ8W0+1zp0GMi24KMmoA1+8r6e++4oZnsOzeKdl/eL3sFyfepcNbNL7IDdNUqkZy4ek7ZCKhRr51XZuP+9v01CnHQToSvGGgho0qlWF44BExE41jCBPR2FysbTnaIvmG1C7sjt7SrIgnpQdCUq2Ryyz7Y6n6kUl+AQZYHXGo5xBkRlrpOS4qbMpJsk7107Av77qMkPXclILhQnD6bpEh6IvAZZFLVmMc7RlT7F6nq+0tLZhb/4IiJ45Fqv9wWSPjlbeO0ecWNpt2I4obWa1R7owwQxUGrf1ZXGTEn6ZlpwL/E/W+HKPnPe+8kR5BkOkMInUptGFWRzlz2/7WqC0qCbhm1NoMg7ppGsvA65tTKYhm2Smypzo8FvielfJWrJVURcNXYjnv2NCfpfqdvPSgrX6TLhpVJsuqe h4u92ahI LY8vDuWBNer6NJcxYjebsaT6lmdqWoAT97Nlddmzm+8hZtqcCn5HU5a8VwcQWYnAkIcy70Ex+tDhDktcTosCeNC9n7KDjz2rm4Z5PO57Fw2Rg00J2rCj7eZsFz88/e27zZwZwaZL5dZYE3QI= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, Jun 28, 2023 at 09:56:38AM +0800, Miaohe Lin wrote: > On 2023/6/28 3:30, Andrew Morton wrote: > > On Tue, 27 Jun 2023 19:28:08 +0800 Miaohe Lin wrote: > > > >> When page_handle_poison() fails to handle the hugepage or free page in > >> retry path, soft_offline_page() will return 0 while -EBUSY is expected > >> in this case. > > > > What are the user visible effects of the bug? > > The user will think soft_offline_page succeeds while it failed in fact. So user > will not try again later in this case. I think that it's helpful to put this in patch descrition so that maintainers can easily guess the impact of this patch. Anyway, the patch looks good to me, thank you. Acked-by: Naoya Horiguchi > > > > >> Fixes: b94e02822deb ("mm,hwpoison: try to narrow window race for free pages") > >> > >> ... > >> > >> --- a/mm/memory-failure.c > >> +++ b/mm/memory-failure.c > >> @@ -2737,10 +2737,13 @@ int soft_offline_page(unsigned long pfn, int flags) > >> if (ret > 0) { > >> ret = soft_offline_in_use_page(page); > >> } else if (ret == 0) { > >> - if (!page_handle_poison(page, true, false) && try_again) { > >> - try_again = false; > >> - flags &= ~MF_COUNT_INCREASED; > >> - goto retry; > >> + if (!page_handle_poison(page, true, false)) { > >> + if (try_again) { > >> + try_again = false; > >> + flags &= ~MF_COUNT_INCREASED; > >> + goto retry; > >> + } > >> + ret = -EBUSY; > >> } > >> } > > . > > > > >