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 C24CCEB64D9 for ; Tue, 27 Jun 2023 19:30:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4A6488D0002; Tue, 27 Jun 2023 15:30:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 456208D0001; Tue, 27 Jun 2023 15:30:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 345C08D0002; Tue, 27 Jun 2023 15:30:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 20F3C8D0001 for ; Tue, 27 Jun 2023 15:30:54 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id DE4B71C8925 for ; Tue, 27 Jun 2023 19:30:53 +0000 (UTC) X-FDA: 80949520386.25.7B243D5 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf18.hostedemail.com (Postfix) with ESMTP id 3493F1C0025 for ; Tue, 27 Jun 2023 19:30:51 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b="qRbNX/YF"; dmarc=none; spf=pass (imf18.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1687894251; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Y2lJvBgUOEkgq3tumrrFTeotbwylIIWJ8ku7Y0sFFj8=; b=Kc74/kQMOFzeCm6HKEUEqwzfLvK/JcFc4helAZMPz1eUshnM9gtLRLa7eox4YgPpwGCwkV 0/iVX9Ufs0EameSzejVilWfAIiIRto6n7RhP+mpcne/Eb5xQQey1H5HVkQAbHfBAUht/UD E1Ovl5LHVKBe4iM5P1NG8iRwmt4TnRg= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b="qRbNX/YF"; dmarc=none; spf=pass (imf18.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1687894251; a=rsa-sha256; cv=none; b=pAqTyBDOoY5cS2xpPysdsuHwr5XAK35U8wP37DjfSScjEsvuPPI8hWl3pSjA8vZ0gKIAb3 l7/5yJ2B0+iqo2VhWbpz//LB8H49GErWRwWRGDimxnC4g2o8UBeuwvqA8JrZAlUENSziTK lMzjWoc9FwDElsiJagfz8nLhjvTrk8g= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 4A961611A5; Tue, 27 Jun 2023 19:30:48 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7A0C6C433C8; Tue, 27 Jun 2023 19:30:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1687894247; bh=qyL7k4x2MyCgP1gFHf5PfFyJg9/NSQ4dtkkM96Ww+3c=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=qRbNX/YF7zcQlP1FGxbD2rHq2rIsxYzfvJ9ST87O1hP+xSY00uHWo0IRMrwCC4XSM BjGafaZFLnMVCtW7D8y7MNFcB+k//AAkn2R822RwFhTfnuNnsPEHtWsOac5GVF8zI+ z4n5yHU5tOF0quf+S+S0sHiZ+iKHEM5/8N1FvqyU= Date: Tue, 27 Jun 2023 12:30:46 -0700 From: Andrew Morton To: Miaohe Lin Cc: , , Subject: Re: [PATCH] mm: memory-failure: fix unexpected return value in soft_offline_page() Message-Id: <20230627123046.ef7e791208214bbfecd71e42@linux-foundation.org> In-Reply-To: <20230627112808.1275241-1-linmiaohe@huawei.com> References: <20230627112808.1275241-1-linmiaohe@huawei.com> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 3493F1C0025 X-Stat-Signature: 6z3g3fpxqfpgf1rx15qmrsij3uiuco8k X-Rspam-User: X-HE-Tag: 1687894251-180088 X-HE-Meta: U2FsdGVkX1/hUL0AcrCXqoTwy1lhTv36vsLmarQ2E3Q0E/8Osaupx+nZd/agqSTX90dNdWaIWbudIKFJ+7z1n66et6bZLdgOcO9xIFQyMFENWZ7QCkfnoPBwMUzcFsSFbIOm++XQbKqdJbKSXqEffX5FvGO9lm4gsIVUaTGb1yPfqNct4zWQRXjz60BbEpHt8Thocw6gY5o0DU27bdnsKJnxNqtoaRPfvvVSst1whNFfPES1bdLfi8I8ewDlLVHN38/epG9fWOGVBkpploEsJhaGxfd27/qksONdCx1z439cjio+8AfNWIwCBPgG/+5njYk4m0j5OMEwwX+KtKcsD5JkCl8319sDla4F0kvYJ3fqLd+qgO24/u6H1OIH6XFSXsrotSipUTpWAgAQnz6+dsD3oHRoKlGrlVoyXlz/RRb7OYNqyvojlJ+88qzukaklIi/dExjW6TQGnSJ2xRWBgkQ078Izrly/UA+mB4d0p8oB+3dJiGOdKePtngZmOL58A5q0kSK6WlO2Z6UM+0csvqQUr27xXUWuIsk8COtzSk8Zd9QHURA04lzDlC4QwOSYA5ZvverrXT+d0Y1G2XZ9AgBmc774QhmIuUfaPCSkymmKJaJLi+m4rHU9jy+nhd094UcsyBrQKrd/aQx6DZeR/+ERGfiEmOiNd9O0Kz220z/plNElF+wwpuslZtEud7R+uwSCnRuUeujj0VjzAJgieCe/xVWwIx0o1hwV2H8dU8L6j3BPR22bwDjvsR6Q7B/pwgdYG2m+r5XwFt4Ss5pmpMhM6q6bf9SUnRzNcmEa4Y63VMtw0v7Xz7Voy7z3XcEK1yMa29tobA5fK44kdSHPtbVAXLEbTk1KkkCujNbfPYOXT62lDN9c7xpj6PCtzonTn4m60T29cdc9j5KmJ9z8iSwi6e3yQkw05f0AKArjuXmZq4+ZrOARZ3PyvSD1F6+tIR6WGTEMJ44lMcYZJEC u8W60gq5 uv7TtRbnyh53F4krTTuYZC/i13h3NjcuwEyoX4Ce/Gtg6kz/JHuNfyMxj5hc/w1mVgDh7ulHaEhpJfuwYDLTiQWMrtqiGYvwXiL0x6T8alkANvd1RTpogz+1LIOZNcveo27dl2Nl0F8qxo/g22ZHTX1PY/jWoBg4DwXBBIJxfPfPhNmzZlRF/1k9oU9Q4PQ8rApFsBZ+OA+a3ETe49kTr09soSKgyTRlbNxDTK5v+VxsgdVqgohEex2Ylwq+qksec5JOWIGvIWemt+pp/xgohn1Ey9gMFP+0A+SQ4eznv9CxfcmfmIf8QtvjFtZUX8euYJ9XfKGWaBQAxcpbXqOwKQCxocJ4IBIcGgyTjd3aVFxgGaA3qX/jD7jYonYLhxbijnPMyAKpd/TbAsB8= 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 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? > 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; > } > }