Received: by 2002:a05:6358:5282:b0:b5:90e7:25cb with SMTP id g2csp3063145rwa; Mon, 22 Aug 2022 20:31:38 -0700 (PDT) X-Google-Smtp-Source: AA6agR7R83NEQ0mYLvXj+claqLa7pyLm15fIkDrwd4qQidUHZ3FpVsMhSNfkNndG2VnczElfMoyo X-Received: by 2002:a17:906:9749:b0:730:aaee:30e2 with SMTP id o9-20020a170906974900b00730aaee30e2mr14687974ejy.248.1661225497818; Mon, 22 Aug 2022 20:31:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661225497; cv=none; d=google.com; s=arc-20160816; b=0f63/b8YavEpU/LQs8E+W9ROOtEDRo521wgjwYtCexKQlV03xKLHnm9zRVd7ZdIt/R G9M6Nw4N19AWVa2khJXujonMZqCZpQBb2ldSWC+y6Agz+P1v7W1GQ8V3R2KlLnD6lpfY KbiC4cV3y2820Wd6misOh19XxAZnKXM3sfrtieXymUwToz4iuUmSswLDQpfvI4MedkOb nY+3K6HlnQ1N+ygEdJumTg3NycB8zAzfa5OwhWNB0J8M8hY22tqHkct8GjRgrSFsQdbn sIbTJo7qKjvTg02H+dwRfD/IODocqYyyq9SygwFMPxnWSNuXN+dcf14TB8twpc4eJuBX 9jaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=L1lcdRVJ1SWMdbTh7JgkPh7FjxW1ZLFo7OVrfcYt3wc=; b=d+4QayjADZC813MPN9lc7s1i5gA50GXGI8DGvf3J66/dfNmzQP59YkHxLi5hng35Rp KVxMbYvam0u75vubWhfsgzMEtcI+SxR1OJWkUK/su1XOQGUymLHZSNcHt1PhIrI16RTo Rbk6rQaEG6hsirrsKJo+JoDXTNs0QIiyM9eTJZXkRyDPGZFRNjkNgoyvHNEdxXvucLN1 Og3aiOw9jjYZ3FGLRclh1AbUaHGCSkHxYXZU5taIKfAVSkqokWyhvrPrw5SYKpvYxOtr eWrNiQui4ba/LrGXL+co+O8cWdYTDj8E1SN+hFPB/sl0j0/rRYftyVFmOawoOTsmqdPq TViA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ne32-20020a1709077ba000b0073d72dbfdf8si6067913ejc.220.2022.08.22.20.31.06; Mon, 22 Aug 2022 20:31:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240031AbiHWDYf (ORCPT + 99 others); Mon, 22 Aug 2022 23:24:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51900 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239205AbiHWDYW (ORCPT ); Mon, 22 Aug 2022 23:24:22 -0400 Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F3CDE520A6 for ; Mon, 22 Aug 2022 20:24:21 -0700 (PDT) Received: from canpemm500002.china.huawei.com (unknown [172.30.72.53]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4MBZHl73ZJz1N7YB; Tue, 23 Aug 2022 11:20:51 +0800 (CST) Received: from huawei.com (10.175.124.27) by canpemm500002.china.huawei.com (7.192.104.244) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Tue, 23 Aug 2022 11:24:19 +0800 From: Miaohe Lin To: , CC: , , Subject: [PATCH v2 2/6] mm, hwpoison: fix page refcnt leaking in unpoison_memory() Date: Tue, 23 Aug 2022 11:23:42 +0800 Message-ID: <20220823032346.4260-3-linmiaohe@huawei.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20220823032346.4260-1-linmiaohe@huawei.com> References: <20220823032346.4260-1-linmiaohe@huawei.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=US-ASCII X-Originating-IP: [10.175.124.27] X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To canpemm500002.china.huawei.com (7.192.104.244) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When free_raw_hwp_pages() fails its work, the refcnt of the hugetlb page would have been incremented if ret > 0. Using put_page() to fix refcnt leaking in this case. Fixes: debb6b9c3fdd ("mm, hwpoison: make unpoison aware of raw error info in hwpoisoned hugepage") Signed-off-by: Miaohe Lin Acked-by: Naoya Horiguchi --- mm/memory-failure.c | 1 + 1 file changed, 1 insertion(+) diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 9d1ebfef04ee..ecd42d717c6f 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -2378,6 +2378,7 @@ int unpoison_memory(unsigned long pfn) count = free_raw_hwp_pages(page, false); if (count == 0) { ret = -EBUSY; + put_page(page); goto unlock_mutex; } } -- 2.23.0