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 20688C54E58 for ; Wed, 20 Mar 2024 09:05:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 97BB76B0092; Wed, 20 Mar 2024 05:05:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9050D6B0093; Wed, 20 Mar 2024 05:05:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 77EAB6B0095; Wed, 20 Mar 2024 05:05:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 62F5C6B0092 for ; Wed, 20 Mar 2024 05:05:36 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 295F7A10B6 for ; Wed, 20 Mar 2024 09:05:36 +0000 (UTC) X-FDA: 81916834272.09.5DC6732 Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by imf11.hostedemail.com (Postfix) with ESMTP id 423DE40006 for ; Wed, 20 Mar 2024 09:05:34 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=CdI1WMdY; spf=pass (imf11.hostedemail.com: domain of seakeel@gmail.com designates 209.85.214.174 as permitted sender) smtp.mailfrom=seakeel@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710925534; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to: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=eOl5FJq1jF6A4kdSR20ohjox802dBiYkdAwfXGs190Y=; b=IHstx0OBJGaOFWq/MRWQb7ZIX5pjqjBDZ1pJfkKMtCYPYv/SOseA0ic0ZCVTwdzXpBX5N5 SW1CCWBQHcwWBwxcpNgBQV4sX18g0SQXGUxJc1Re/h9vx6WpYLoPq+fz49tbOzAr8Lzt1d xRR7CIbanfHKAQfVu2kwNvIyZ4noNYc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710925534; a=rsa-sha256; cv=none; b=dFcHiY46uux/GVSpqjaY2tZWfUOE4M98q0yi/ZF2aKtydwUFp1Ol+rXc3mR0635g9kz4j1 I+CMTJIxDJp7hHuQpKShTK6aAS0NF2A5wC83MYd0QkERUsgCqGK9RFxEhu2thjaXTqv0eo vK8F31pJQTadMXoWGWdI5UXEca0IgpM= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=CdI1WMdY; spf=pass (imf11.hostedemail.com: domain of seakeel@gmail.com designates 209.85.214.174 as permitted sender) smtp.mailfrom=seakeel@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-1de0f92e649so43250525ad.0 for ; Wed, 20 Mar 2024 02:05:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710925533; x=1711530333; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=eOl5FJq1jF6A4kdSR20ohjox802dBiYkdAwfXGs190Y=; b=CdI1WMdY26Iwbryyxybi70oPzCa4pTyMEONY3AT9oF9qZpBAtSKoaRhP7QsxLuqQYS nY422Dn4MPM+66eE5EaIQfS2sahH5hSFJ3ZsHFQ+YD/J+euuMmjU80OCQ/ZVX9YtMY8D xKIN1bV4enQVCdf4E5emIUt53DcGj9GpQERezuCAlbQlInjJmew0nRZFn8hR34hhUP6v Vh6Qeqb/GAYa0LNIsIRIVjejTctCeUQ4/jT3c7JWbC2FzIgSlGMPT6nO86u5PpVlg+Bt u5QJkUMuFoQ1VbQTuxsub3S1W4o2lZ0RRcGi6C1/LT/csfOgnCjcIQVKUUBJdTjtKEnW 4+qA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710925533; x=1711530333; h=content-transfer-encoding:in-reply-to:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=eOl5FJq1jF6A4kdSR20ohjox802dBiYkdAwfXGs190Y=; b=KWic5knRmBSw/+KX8kUUz8g+HjAQhvLNRdtXMTcQZjCDEWf3zBIGlfjoQPW1aVB7ej dtPFsb/g7seK+Zo7kTESTQv+DODPX+sAIjoJRs5JIQnibKeLeY2Bc34Q2IElF8qar7FK 8qeLzmP5rtiH8DfYC5yHmqtVVeIGAdc1pnPjcUEa5IBd1v7A4s2EOI1/j12hNML+Ndyd baH4DSFjwVllrd+3hTNxj7SCQIZy2hGzio5Qkh7eGi2F2PQ5q68NWsDtevxCuJNhydt+ DLrBF3n4xAs9U3VVRdJx0Qcd8wjpxvaIJu28RQ28xBRuttjLeIbHbebeRcIjAvpvEeVr 2HhQ== X-Forwarded-Encrypted: i=1; AJvYcCVhUTzWi0IYPXXxpq7/Df5lw+RNK55w5Xf5pMzKtkqAOSX/LcnFMq3ib6fMROvl+VTQo8lMeniEhB/xfF3Lywncs0E= X-Gm-Message-State: AOJu0YwW279PBS4P+nheCeekAjpPxn8zXx+Owii9vAzduYF25KwvyXGJ 2VXh0dQoobKUN6ofu8ld7uC94lbIeEuPB7TRa347QqmDfzpVK7Dv X-Google-Smtp-Source: AGHT+IGIjIr/BC0UGlwJERHJDfupOBUPN7oxWvwBJmJVqtmIJ3uz3YdttYX2qR6r5icsC0/2gshLwQ== X-Received: by 2002:a17:903:1251:b0:1dc:696d:ec6e with SMTP id u17-20020a170903125100b001dc696dec6emr18695368plh.21.1710925532844; Wed, 20 Mar 2024 02:05:32 -0700 (PDT) Received: from [192.168.255.10] ([43.132.141.21]) by smtp.gmail.com with ESMTPSA id bi5-20020a170902bf0500b001e039a22e6asm4144772plb.65.2024.03.20.02.05.30 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 20 Mar 2024 02:05:32 -0700 (PDT) Message-ID: <54a8ec22-ce00-425c-bb58-54cf8606a362@gmail.com> Date: Wed, 20 Mar 2024 17:05:29 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 01/12] mm/ksm: catch tail page abnormal in page_stable_node Content-Language: en-US To: David Hildenbrand , alexs@kernel.org, kasong@tencent.com, Andrew Morton , "open list:MEMORY MANAGEMENT" , open list References: <20240318121443.3991104-1-alexs@kernel.org> <7a0d7d0e-d241-4942-b6c1-e60d597b3dd6@redhat.com> From: Alex Shi In-Reply-To: <7a0d7d0e-d241-4942-b6c1-e60d597b3dd6@redhat.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 423DE40006 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: ywifxt5zacrsyitgypwhq9gyddn1s3hg X-HE-Tag: 1710925534-414051 X-HE-Meta: U2FsdGVkX19BygJye/mtRezYofUfJtKRrfdivn2AaRWCIB9L1j2QZUMOkSehPZvPERQdY/tEbq0XpECmSjmka73U7L0JImFr8UJqUym6qfHqy2mjBfEkLm0HuDWce0JDzdjX6l9MJtl9F0a6+4IPiW59alYuTsbIAORc9E1E3s68Nk4IEtaYowQIsP4KqAJJciF9Xyc5W8y1bT664Zh2lhSinTLYVBe4kBP2UJt6+C55w8WOniSFXG9tcq+jDB5+Lge53BrSoZgfnG29jsQMVmKwqIyx1HA6OerSRehEl+UNSEFK+ZgDceNjGFu2kjLYD11oHbI6ILcla7sqLtJn5GiM3W5pgh8g+FhIDD7bboq3hnlQEn0XIRk2OSd+h8LGIFO0UBHyarR5ceQVMK1OU5AE8zJhGdNQ9XChSb+cgxlkZC4d90LCoBSAxG3CPbQ3WuuRPymd13/coFurbqdPT0lhCNyWFI6bRebTgG9fbPQaO/wns1idpIl75Xc98YCz2iF933tj1B3s3G0BcWpMWxkY3ksABmo43jzYVUfWmptgopu3Q/b7xWLmZt95fK35+li7S2cEqVNAv291CVGrErRGYCI/JljJWGPkJKAqp1NsB0k6xOcwLcvX61zTWX3nXZAm4I9dzrfx8uIqqqYTSTOLEyJbsGHCaBQDJ/jp9oxwnhE8SyaBoZUym/in1RS9+RrY55TPok470cId9gmos9FK9ipeX432lx3dH3qKPbjHWgaUgKpmX0cnUJFPLbDE9mD1H50rdtrygHaxN30PGa9oPqQ5OhyhmBZYmQj1XAHCBM+0M8QEXNYBMw1DCWcyaKHqx953/TgTkjpuqnRvfp1NGswgqkE09CD//mEPmelVZfpEqRqeXPTIl1HgKCf4DX0ZD+nZ39hGowho6lNeuiwFuUEEVlO517meulmUuJOjX726a6++tcOB4EJv+B4ekbBYFXeCS2Z+Z6hA2/3 4pirn2bk sbs7uQ7h+vTZnz6fU0zIyZV0vGnMAvcAqLiJJXejPOS/OAEP7OA045/tOSeJbA4ayY2Gv8asy3/2qWp3Hp5Z47nIAvdywTcTXRoTNeqNvVqQrC4Yb2c8F7yoN38smGazSDyKm6XekYFPBqpL9zX0e2SIOY5H+/1UldzYK7T9l7PzGC1tySxSMXRGFpkUDSphjSk6id6LFa+6J9s/txy9Hwe/zOqeAcSDFrCcWiQB5pzf/VzTE6U9gFJEuJg0ZqDX7CbILVgwaVP1seMU8YR12slqXdtIGM/STLTiWib7o+XhRLULItbI2T9SwgMc1LLxCaAAeKSG+Xs/CesN5l2XbdhDu9Q4en6xprRbUSVpgcT3pvdibHqy6Bf90uPHS+ZAM86tI8i4xSWJ9YORVxVrq5ZKY5d2Nfq4a1t/JA4DeUuy66aL1uGsAFi2Xzl/RVzH7nym1RO1auP5c7D8wkJzZ+a8GUagpdPtzPyQGZxuJu7l/i4ylE0S0Tq6fz3oJWzpGA8/a0iIC5lL1hjNI5/6OvwSulxt8LMVEu40WPN8WC+SsacfMsszqlq9iF5hEr+OfBlPnlvtgcdsdMN26Em++HN4qIUeAdlEg7+8CKVW468Um86FrmwC3LXiPTskxl8HajAApN47d17I2u5XMyaLNbWUhh73wNDZXIZDlrjuirSJH2IqDnY6/iMe9ZikDxea+6p0xZiG7BBxLmSqdvgbvAfoUQ4lRrpBNV4GEsOvaIBvk814iEArV/ybgaFsRStHtVxoqsfzoI0EXSgJu3XzDJuiE4RSYAdYlXBfviup6Geq//1frLGet+kfdIKms2UKVxUj3wjy3qh2kXMG7JV6MSYndv1wHCMJ2EmYuszfW3bWr9nrsI2IHGeELsitGlaoYGq35CNn9vy/ZQUA9xMNgEhGKuAudTc3wlS5G 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 3/18/24 8:25 PM, David Hildenbrand wrote: > On 18.03.24 13:14, alexs@kernel.org wrote: >> From: Alex Shi >> >> commit 19138349ed59 ("mm/migrate: Add folio_migrate_flags()") change the >> meaning of func page_stable_node() to check the compound head for tail >> 'page' instead of tail page self. >> But seems both semantics are same at results, the func always return NULL >>   for tail page. So adding a bug monitor here in case of abnormal. >> >> Signed-off-by: Alex Shi >> Cc: Izik Eidus >> Cc: Matthew Wilcox >> Cc: Andrea Arcangeli >> Cc: Hugh Dickins >> Cc: Chris Wright >> To: linux-kernel@vger.kernel.org >> To: linux-mm@kvack.org >> To: Andrew Morton >> --- >>   mm/ksm.c | 7 ++++++- >>   1 file changed, 6 insertions(+), 1 deletion(-) >> >> diff --git a/mm/ksm.c b/mm/ksm.c >> index 8c001819cf10..3ff469961927 100644 >> --- a/mm/ksm.c >> +++ b/mm/ksm.c >> @@ -1091,7 +1091,12 @@ static inline struct ksm_stable_node *folio_stable_node(struct folio *folio) >>     static inline struct ksm_stable_node *page_stable_node(struct page *page) >>   { >> -    return folio_stable_node(page_folio(page)); >> +    struct ksm_stable_node *node; >> + >> +    node = folio_stable_node(page_folio(page)); >> +    VM_BUG_ON_PAGE(PageTail(page) && node, page); > > I don't really understand why we would want this. > > Only KSM folios can have a node in the stable tree. KSM folios cannot be large folios. At that is precisely what folio_stable_node() checks. > > If we'd have a large folio identify as a KSM folio we'd be in much bigger trouble. > > > Besides, I'm sure you read "22) Do not crash the kernel" in Documentation/process/coding-style.rst > Hi David, Thanks for comments! Forgive my stupidity, I understand KSM stable tree has no compound pages, but when searching a tail page in ksm_do_scan(), why we couldn't be in a race, that another VM doing THP collapse on the same contents pages, while the 3rd vm is doing hugepage spliting? Best regards! Alex