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 05BCAC4345F for ; Sat, 20 Apr 2024 02:13:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1E88F6B007B; Fri, 19 Apr 2024 22:13:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 171116B0083; Fri, 19 Apr 2024 22:13:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 012626B0085; Fri, 19 Apr 2024 22:13:16 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id D45B36B007B for ; Fri, 19 Apr 2024 22:13:16 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 66A9D415F8 for ; Sat, 20 Apr 2024 02:13:16 +0000 (UTC) X-FDA: 82028287992.04.EE07E03 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by imf03.hostedemail.com (Postfix) with ESMTP id 6FA5820011 for ; Sat, 20 Apr 2024 02:13:13 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of linmiaohe@huawei.com designates 45.249.212.187 as permitted sender) smtp.mailfrom=linmiaohe@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1713579194; 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; bh=WvXN7uF36IKJwsn4LY2Rn1Z5WrB//OqUYccefq6PgTw=; b=J26mbsNl2MkRScxxaYKQTy5UwrqolnyeQ207mUUwcWZAoOXDgf6zbgK/O4yjfQ6xptjh3X xVj93rqUa9TQQpCNwxXsLFs3O9EcqPuxsMiaTXQXLCWTUqA5/2DVdVw+kBMxOmREoSxGcz RYa+uL5b2KT5+oiFu8i3qe79fMCvENc= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of linmiaohe@huawei.com designates 45.249.212.187 as permitted sender) smtp.mailfrom=linmiaohe@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1713579194; a=rsa-sha256; cv=none; b=WRqzKCggpDzgg8v8hNcP/wVIUu0BMJbsKvuS0MX2FToJBguHbOfSmk3bU6bKM0MsjT5cmn RYx+EPLSfSsEkM5NymomAOQHfJPjlst6FpFsfHHQylm/RhnoS+ocD223pZW8mB257AE8iE ziIYe1YubjQ1Uh0aupewyIEuNpguzcI= Received: from mail.maildlp.com (unknown [172.19.162.254]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4VLw2K3Zttzcdln; Sat, 20 Apr 2024 10:10:01 +0800 (CST) Received: from canpemm500002.china.huawei.com (unknown [7.192.104.244]) by mail.maildlp.com (Postfix) with ESMTPS id 7FD5618006C; Sat, 20 Apr 2024 10:13:07 +0800 (CST) Received: from [10.173.135.154] (10.173.135.154) by canpemm500002.china.huawei.com (7.192.104.244) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Sat, 20 Apr 2024 10:13:07 +0800 Subject: Re: [PATCH v2] mm/hugetlb: fix DEBUG_LOCKS_WARN_ON(1) when dissolve_free_hugetlb_folio() To: Andrew Morton CC: , , , , References: <20240419085819.1901645-1-linmiaohe@huawei.com> <20240419141134.464ea3a1ef3d0e93c6711c93@linux-foundation.org> From: Miaohe Lin Message-ID: <000d75f3-6e16-6b91-7657-afb954773381@huawei.com> Date: Sat, 20 Apr 2024 10:13:06 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: <20240419141134.464ea3a1ef3d0e93c6711c93@linux-foundation.org> Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [10.173.135.154] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) To canpemm500002.china.huawei.com (7.192.104.244) X-Rspamd-Queue-Id: 6FA5820011 X-Stat-Signature: uwoyonryw3o557sgnu1z8pe11bxoqkc6 X-Rspam-User: X-Rspamd-Server: rspam07 X-HE-Tag: 1713579193-799170 X-HE-Meta: U2FsdGVkX19XadgsR+JHiE3NGA8ogP9Epi1801CBbI5Qo/hFjiRFsMdGZuGGzW13W7IJoWsppKlel9fNxbzEnlybgmWbr22v3APE0IlBLQ5JpTnu9PqOdm/AoN8Z8BAOVJYfRtoPnmp8VURA++qP6764UMYL3GqfnEtrRz/J0mzUZajMiyX/2VvhLi8I6TUkhtMfkeLtfwI+i4OG8T/t5kXxsvyn65ez5uQfG1rG+EgHswdD2PHEaqHI09eoDMgaHVOLlyIugxigfwff2OQysVync8TFhED5a1jAYgQNIxpDW8i64wBnuWg81KRukiPLH0VWVemoV8ezReO7dN7SA3+Xm4wqH0iL69hrJy66meSR8+kPo8b3tCjSZP/SsDglroZSzoCebIh8oAgmngHgv8tD5nUdf5RUyozu8fseIkrntyLKzH+S2SD3BwFX/lHHeaLmsmWMDYjhyaG/I0RH5Z3HCpUK3Cnhq9xjQVe0UZkGHO5sONjw3EHMHmhVVmARUI52iNGoYQWYqwQiMp3KRxxdhVqyrG7jX9DmuVEzlYrwlQvM/RssfB76hhSbK+EXRPmxul94ptOg9tMzjR2JPa56Rauu+m2sMS4IORmPTikAhUg4HWwPPPAxR5LwRaSoGFkvELG2jJpM3aSAN1WBj+OfIsC6o+SSi/QvSG+YfSxRL8vALwIYrGMco0+b/eJQlh/E+Mb3ZBTIF4Q49YSPpg6s+wc4hJG013FbgLAy973C/H0DR6ZaMq108DBhwuXGTNIx8KYB/hBKbfKB0s0qStg3PV9p0U0QCYafc6WaiWFdoxqf6EKgbd2rOp3IB81f1FzT3zdiNa3fKWymiFiFtD5JvY5RLE5M 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: List-Subscribe: List-Unsubscribe: On 2024/4/20 5:11, Andrew Morton wrote: > On Fri, 19 Apr 2024 16:58:19 +0800 Miaohe Lin wrote: > >> When I did memory failure tests recently, below warning occurs: >> >> DEBUG_LOCKS_WARN_ON(1) >> WARNING: CPU: 8 PID: 1011 at kernel/locking/lockdep.c:232 __lock_acquire+0xccb/0x1ca0 >> Modules linked in: mce_inject hwpoison_inject >> CPU: 8 PID: 1011 Comm: bash Kdump: loaded Not tainted 6.9.0-rc3-next-20240410-00012-gdb69f219f4be #3 >> >> ... >> >> --- a/mm/hugetlb.c >> +++ b/mm/hugetlb.c >> @@ -1773,7 +1773,7 @@ static void __update_and_free_hugetlb_folio(struct hstate *h, >> * If vmemmap pages were allocated above, then we need to clear the >> * hugetlb flag under the hugetlb lock. >> */ >> - if (clear_flag) { >> + if (folio_test_hugetlb(folio)) { >> spin_lock_irq(&hugetlb_lock); >> __folio_clear_hugetlb(folio); >> spin_unlock_irq(&hugetlb_lock); > > Please let's prepare backportable fixes against current mainline, not > mm-unstable. Because fixes against current -rcX and earlier will be > upstreamed ahead of the mm-unstable and mm-stable material. Do you mean I need to send one fixup patch against mm-unstable and another one against current mainline? > > > I did this: > > --- a/mm/hugetlb.c~mm-hugetlb-fix-debug_locks_warn_on1-when-dissolve_free_hugetlb_folio > +++ a/mm/hugetlb.c > @@ -1781,7 +1781,7 @@ static void __update_and_free_hugetlb_fo > * If vmemmap pages were allocated above, then we need to clear the > * hugetlb destructor under the hugetlb lock. > */ > - if (clear_dtor) { > + if (folio_test_hugetlb(folio)) { This looks good to me. Thanks for doing this. :) Thanks. . > spin_lock_irq(&hugetlb_lock); > __clear_hugetlb_destructor(h, folio); > spin_unlock_irq(&hugetlb_lock); > _ > > . >