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 C14A7C5B543 for ; Wed, 4 Jun 2025 22:47:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2C9C96B0541; Wed, 4 Jun 2025 18:47:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 278DA6B0542; Wed, 4 Jun 2025 18:47:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 168B26B0544; Wed, 4 Jun 2025 18:47:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id D17856B0541 for ; Wed, 4 Jun 2025 18:47:58 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 494D780BBA for ; Wed, 4 Jun 2025 22:47:58 +0000 (UTC) X-FDA: 83519207436.21.650AB10 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf10.hostedemail.com (Postfix) with ESMTP id 86EAFC000A for ; Wed, 4 Jun 2025 22:47:56 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=zsYONRVJ; spf=pass (imf10.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749077276; 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=fgM6uCbUPHT+QYGIVlQ4qlDsV7NMesM6CG6kSpxdnXQ=; b=UKa6QRFzFHLCDg3wBO40QnCVRgb/yAL0kFWP/7yGl2k/ixR5zS1kSvLKBnCXNCJP3sZuwT 6v5RHqH5nW3l3W9irjf+XxZvs8ozgv2OJLbCs6CgTTtvpCLeK3lMlLYYAUs6VVx4GObxyZ 1Lo7yvCBJGe9QKwVzp/mVSw6bbCxf2M= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=zsYONRVJ; spf=pass (imf10.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749077276; a=rsa-sha256; cv=none; b=fvp7LMHe0qQSPFFLVy5oe6QsKWLzkepNlxES4La5iIoIjdLFKdDLSPk3wfBs4v6jCzaTne bgdKWxK2tChR9CBnIk2NvpIRyLsjBXw38aCfeGoq3MRXKMiBPHwC4U40vHxqhCalvpsIcI 1aDmOo7JCJ7ANi0NfQcpZAQU+cRNdYM= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id A926C5C65D2; Wed, 4 Jun 2025 22:45:38 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D2E8AC4CEE4; Wed, 4 Jun 2025 22:47:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1749077275; bh=lTyIl3tFEZAFEhIjI5VOgHghdPUqVQ2X+80AE0ergFE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=zsYONRVJWIbFLTEWTOey1C+KZduSzpXfe9px2qj9Z47nLJjO9uITUTfcOFg7N0CSc Y0osN/dCiKZR954vBcc5lcKwNXCgKbZkyOQ/TdInhViPXF9s/ANuyNLs9zFEB8X0WO wUWOSJgOfEVR1Ujh18EPzbc7USrYQGIGts1qYk4o= Date: Wed, 4 Jun 2025 15:47:54 -0700 From: Andrew Morton To: yangge1116@126.com Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, 21cnbao@gmail.com, david@redhat.com, baolin.wang@linux.alibaba.com, muchun.song@linux.dev, osalvador@suse.de, liuzixing@hygon.cn Subject: Re: [PATCH V2] mm/hugetlb: remove unnecessary holding of hugetlb_lock Message-Id: <20250604154754.a30e327c3f1640173c8b9cb8@linux-foundation.org> In-Reply-To: <1748317010-16272-1-git-send-email-yangge1116@126.com> References: <1748317010-16272-1-git-send-email-yangge1116@126.com> X-Mailer: Sylpheed 3.7.0 (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-Rspam-User: X-Stat-Signature: 4hcqaehyx4bghs5ffugm7g4ycchdjw86 X-Rspamd-Queue-Id: 86EAFC000A X-Rspamd-Server: rspam11 X-HE-Tag: 1749077276-543581 X-HE-Meta: U2FsdGVkX1+9+coAmtYXhB2fFzPi1tXT9V2OKTIKjM9mTFNqwb4qqZ7Pn8ukvF46X2AtnSIfNzWIJRxPPylSVhS/6WLLNuUnRGSf26L5VMOUbaglZ8z6D1FPJD5UjeEKDsh7PgHljt2bBRfxChftTs6wjk8eE6GzPUcyqu6JVXMMaWsMAAb0Ceg5NgWvy139VVj33HLQp0dTzwB/10bMgXPr4fYJtXutjHRAqrkxWghOnRcsAU3DNFEQ2alVHrgYXhWTJ8LxhuG9PHYWH2N71Tx0nb0ZzE8s69LLhw1WFqCxX5AOd3ovT6nvLL8ydT4iZhVV/klsHIRjEepRlDoUrMYqGO7MibOhsZc3C8OWObq/6dt4Ik5M5T8wvZIuMD3tXfmy6uL7PD2VCRAxU/sgZfAliOoZALTXp8WeQZuDBZ/f0HmAqChxkZRaWZBtLIg/cEKFWwb3Dw+kHDkbsXGcI0VJYvMqrAWutbC61aJ7LdEO6EWd19nE+qd2seE7jQwYvA6U6eofBmhDryKN8knuaj1l0Tw86MklRXcGbpPI6HbWw3DYswJxl+o23Rhak/r2bva2aNKpOUDJjXkT2iTlidqX7I4j6qgCCVrkbI1RUT6e95uDrIyWZ41cyynQk3L020Jn932hvqWPxjx8vmZp3B6bdrCK/nDan2MV8Hgi7v44fIhga71hdnyJZPAr1XP+Xs/hSW2YXEzVworoxORgR9ypgeW2CjwXLD5ykCw5xT2E36IyGtw02fW3O5eVcMM2TKv2bJdHmZ//+7w6uK5r+CcwqVficGH8Y+2y8tjPfSQideee9dRbvpUekZgFMLaUObWguL7Wvvd1sz2s4h+aJcwuWmCc5EcRCzi/wgBT91j7tNxZrxGCRGmJeAocC9GanF2c0MRCQ5FT1h77SabtQW5qrn//oTj7UzcukrYoqSKrckpuc4PKL15HXDgoFTX4Y+Y03JX3LneyOdxbSfP d7+c8BJ6 WaD3Q9sT6xsS7dJwsezkI9C0D3X15zY6/He5GjR1LsW1eGYM0OjuufRRyi6uk7yq/75u2bXeWx6jCc9RNlamfhPfUDHHIzd4+rCEyBn0cJOSfQA38vBuRNsJy3/5DYnQ0MzLfpM7+nQDp5va0Uq+k3gKRmKtoX6i8zE3wJFetdaZ74mW3T1UkbiZ7b5NjgrL+elieCY8BnAjOXv8GSzmY6Md7rCMkP+Et+0SsYKV2Vs/rH2j9eF1mZ3lzlQITp6MmHym8O3FqeZyf2q62Ui1+TDAwnhJtT8tMwdzsjl2p77A9ivv+aLwKv77JsRBUAnCRtOfZ4jUUesJa+IqmlsIji5gZ0hzyHHhCt7/91ZFfpLMl/y/1nxGP/OZr95CeYm57PjL9B9CGUHwLPBgtGlPgFO1qWg== 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 Tue, 27 May 2025 11:36:50 +0800 yangge1116@126.com wrote: > From: Ge Yang > > In the isolate_or_dissolve_huge_folio() function, after acquiring the > hugetlb_lock, it is only for the purpose of obtaining the correct hstate, > which is then passed to the alloc_and_dissolve_hugetlb_folio() function. > > The alloc_and_dissolve_hugetlb_folio() function itself also acquires the > hugetlb_lock. We can have the alloc_and_dissolve_hugetlb_folio() function > obtain the hstate by itself, so that the isolate_or_dissolve_huge_folio() > function no longer needs to acquire the hugetlb_lock. In addition, we keep > the folio_test_hugetlb() check within the isolate_or_dissolve_huge_folio() > function. By doing so, we can avoid disrupting the normal path by vainly > holding the hugetlb_lock. > > The replace_free_hugepage_folios() function has the same issue, and we > should address it as well. > This change addresses a possible performance issue which was introduced by 113ed54ad276 ("mm/hugetlb: fix kernel NULL pointer dereference when replacing free hugetlb folios"). 113ed54ad276 was added recently and was cc:stable. David said: https://lkml.kernel.org/r/87521d93-cc03-480d-a2ef-3ef8c84481c9@redhat.com Question is, will that bugfix's performance impact be sufficiently serious for us to also backport this new patch?