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 2F07DC3064D for ; Wed, 26 Jun 2024 04:33:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5694D6B007B; Wed, 26 Jun 2024 00:33:20 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 518B46B0082; Wed, 26 Jun 2024 00:33:20 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3BA396B0083; Wed, 26 Jun 2024 00:33:20 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 1D6056B007B for ; Wed, 26 Jun 2024 00:33:20 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 82AF012098C for ; Wed, 26 Jun 2024 04:33:19 +0000 (UTC) X-FDA: 82271770518.27.2356AA2 Received: from m15.mail.163.com (m15.mail.163.com [45.254.50.219]) by imf07.hostedemail.com (Postfix) with ESMTP id 988B440007 for ; Wed, 26 Jun 2024 04:33:16 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=163.com header.s=s110527 header.b=koPQBPRr; spf=pass (imf07.hostedemail.com: domain of ranxiaokai627@163.com designates 45.254.50.219 as permitted sender) smtp.mailfrom=ranxiaokai627@163.com; dmarc=pass (policy=none) header.from=163.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1719376389; a=rsa-sha256; cv=none; b=fpFG3X+v36Eeqvra0em/z480uElpe6SFI0WpSRStGfgsXPI5leZhj1ADq1IhylXrol5a0Y yXfegE54r6I/zMCVSnf6Wf/aq8slYdF643QcPcgpIYkCWsg82gXiDISIba6Nv/pITPvJua q0JKohv+ujFjHpCbZdg4Ea+4Gbvdkk4= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=163.com header.s=s110527 header.b=koPQBPRr; spf=pass (imf07.hostedemail.com: domain of ranxiaokai627@163.com designates 45.254.50.219 as permitted sender) smtp.mailfrom=ranxiaokai627@163.com; dmarc=pass (policy=none) header.from=163.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1719376389; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ZLi/Ep1EGjtsxREnkh4R2fNt0gBVDDmLr+/Dsf0yMRs=; b=3S/QVNg20Z4Zj3F1FkR2b76C2vJSXBMmTJz78J7VT+8E0K2h7Sv1AekI/s40HTYBE3zC1/ j/PWsMvl7MDdiYI9w1PzwSEw240EsIPbvxq74S2IbuUKwf2ndPIZ3fEs9XYNsuJ9DotolW gcQpnFlmNM8BeerBT/ftjI7KuVjgJB4= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id:MIME-Version; bh=ZLi/E p1EGjtsxREnkh4R2fNt0gBVDDmLr+/Dsf0yMRs=; b=koPQBPRrfCTOqxjhum2kl CsAU0Z3v5X6RZMemadmCTtbsuoy8uCrttQPc/+6Tk8As5Sq3AHhrvgmyPyxwXTQW AftaK2fDnl90WQiHgCVvNBt4Rofh4Z5cE7SFNxiVu/sysIqG1651k4oByHLdhdLz xk8Ub7WQjGfWgqYkTsV2Nk= Received: from localhost.localdomain (unknown [193.203.214.57]) by gzga-smtp-mta-g0-5 (Coremail) with SMTP id _____wD3fyTomXtmoLEPAg--.31175S4; Wed, 26 Jun 2024 12:32:41 +0800 (CST) From: ran xiaokai To: ziy@nvidia.com Cc: yang.yang29@zte.com.cn, si.hao@zte.com.cn, akpm@linux-foundation.org, baohua@kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, peterx@redhat.com, ran.xiaokai@zte.com.cn, ranxiaokai627@163.com, ryan.roberts@arm.com, svetly.todorov@memverge.com, vbabka@suse.cz, willy@infradead.org Subject: Re: [PATCH 2/2] kpageflags: fix wrong KPF_THP on non-pmd-mappable compound pages Date: Wed, 26 Jun 2024 04:32:40 +0000 Message-Id: <20240626043240.1156168-1-ranxiaokai627@163.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:_____wD3fyTomXtmoLEPAg--.31175S4 X-Coremail-Antispam: 1Uf129KBjvJXoW7AF1kuFWrAw4xtF18KrWfKrg_yoW8ury5pr WrGasrAr4kKF98urn2qFnFyry0q3s8WF4Uta4ak3W3Z3ZrZr92kFWjvw1FkFnrZryxAws2 va1DWFy2vas8ZaDanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x0JUvksDUUUUU= X-Originating-IP: [193.203.214.57] X-CM-SenderInfo: xudq5x5drntxqwsxqiywtou0bp/1tbiqRoKTGVOBGSxdwACs6 X-Stat-Signature: nt3wybsnarw77ahdbmf4je79ms7yoydc X-Rspamd-Queue-Id: 988B440007 X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1719376396-31376 X-HE-Meta: U2FsdGVkX1+nSL+OWbbnurhOD58yZRS9mxnDk2n01lw+WRqrNiC1Ji2uLt0El/kHf9uuzrqTNwoaNxDUPLrXDiwzlkw+HD6Hskjyt6Dv1UGXAovOtCCMfiFM8YX8hcgK7weB6qnNCVDcf6IFgnGVgWyy/uOtHVrIGPHlFngcV/DUTc624RSMLXiWVo7FjmNQj/zpBPaDK8LtUNg7jjRL9efJZu1/2dkKaT8UFR+L+PJvVMP00DBKoKnan9vCasVjvBnQfE9dE+M2UhjlmLNyFjx1yHqD3YoTOGhFOB4O7IwD8L6/+YY1KjygLUv2Cz0MvsJCUQkiG2iLeYHXDuhtavO9ZJj4+k3Em15a2RJrWcE+Z6iaMHERfABwcpa+WtRPNglmj0A7rsIZ/7ov+emFJhSmTc44J0ioV9+ZBpSDPkjeCf93vcEjp9mPc+ejVwovFk/LObQ3O5GQ8iDGCpulUAOcxb82c2Tmp4R5jpocEF+7nEFmOsMOp5EUTglzLCGPx2FTO1UaR1oWPG/Gu2LqRgAGA7lCnpRcanDCI3wyeCYs2WtYsoBP8Hq7cgGD7YekujtyhoXOinRDjGGEn5yHybzrep9wIpzsq4t/8ZQZs+A6MxT4kUkmbQw2cupiJ38HIbKfs5qlF2E8fCFObbsTw9POWlWtPVG1BkrlB3EM7mfpbfcSKZu9OhChWEzM/F/SvlSbLFHM574xg7nBicwiukMOEDGL2NrUvmJEoK5QvxzKYIFSZSWtIV1Zk9bOUZhl/20Tt4/dQG5JBPunCZ8KgV0YMuV5Dkr/uHP6ZodbN4Z16JNnjkZo4wcccWH/4yHy93wHHs54ZE6zkLdC1eSLU9b5yos61UK4KOrdMw2tCnPGsKvtmW0aoVxHg+h1dEkTlkWvPYOBFgovDDaQ6aukawcmi0nbCERiTBYMOXbPuzBX2VAGNsfcLq9AsIxNxFfvefTE7DEcFUvtY21fRwy h5q4d0tb 7C/AjG9vSqaPeGGKIy58K0EMwGfhv1wL6qMG452b8P1k4jTq68eUzAIi95zxibYdYS7HHvbfkoePELNSZOpU3xD0854JxWnGSaKe7appXaC49QUFYpLJNXPHsyVWEJQbNrtOpmYk5Oo1FqAtBJUu5pw5+enPFsHWuJctz4cizCRGMOiaOf/jVOeBVytRPsU6zJ5jV3s1ytE8v3A0hsC7J2kVdj0KSDWKwFjrJa4tFAI3fpB1f94gomUxfQAL28DG98vxUYBEzzolxis2p5OM7/tmIkNePQdpoGxU9qr7O+sW9LY61g9XqDBVUbt2ShrbaWLSkhMSoyDEzFnTj1uEwIlhmoChLLdd/gE+4NA6gb4yrGe0dol3U6qlIKdXJhrjB1dt58EeVtBDySTKnZEt4KsQtE7fzsEomhjUSpJjbQ1NUSeWZtqrovy0YKRvg1AheeC3qIDzOWyByo0OACckwFeNsww== 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 Jun 25, 2024 at 10:49 PM EDT, ran xiaokai wrote: > > From: Ran Xiaokai > > > > KPF_COMPOUND_HEAD and KPF_COMPOUND_TAIL are set on "common" compound > > pages, which means of any order, but KPF_THP should only be set > > when the folio is a 2M pmd mappable THP. Since commit 19eaf44954df > > ("mm: thp: support allocation of anonymous multi-size THP"), > > multiple orders of folios can be allocated and mapped to userspace, > > so the folio_test_large() check is not sufficient here, > > replace it with folio_test_pmd_mappable() to fix this. > > > > Also kpageflags is not only for userspace memory but for all valid pfn > > pages,including slab pages or drivers used pages, so the PG_lru and > > is_anon check are unnecessary here. > > But THP is userspace memory. slab pages or driver pages cannot be THP. I see, the THP naming implies userspace memory. Not only compound order. > > > > Signed-off-by: Ran Xiaokai > > --- > > fs/proc/page.c | 14 ++++---------- > > 1 file changed, 4 insertions(+), 10 deletions(-) > > > > diff --git a/fs/proc/page.c b/fs/proc/page.c > > index 2fb64bdb64eb..3e7b70449c2f 100644 > > --- a/fs/proc/page.c > > +++ b/fs/proc/page.c > > @@ -146,19 +146,13 @@ u64 stable_page_flags(const struct page *page) > > u |= kpf_copy_bit(k, KPF_COMPOUND_HEAD, PG_head); > > else > > u |= 1 << KPF_COMPOUND_TAIL; > > + > Unnecessary new line. yes, will fix. > > > if (folio_test_hugetlb(folio)) > > u |= 1 << KPF_HUGE; > > - /* > > - * We need to check PageLRU/PageAnon > > - * to make sure a given page is a thp, not a non-huge compound page. > > - */ > > - else if (folio_test_large(folio)) { > > - if ((k & (1 << PG_lru)) || is_anon) > > - u |= 1 << KPF_THP; > > - else if (is_huge_zero_folio(folio)) { > > + else if (folio_test_pmd_mappable(folio)) { > > + u |= 1 << KPF_THP; > > lru and anon check should stay. thanks, will fix. > > > + if (is_huge_zero_folio(folio)) > > u |= 1 << KPF_ZERO_PAGE; > > - u |= 1 << KPF_THP; > > - } > > } else if (is_zero_pfn(page_to_pfn(page))) > > u |= 1 << KPF_ZERO_PAGE; > > > > -- > Best Regards, > Yan, Zi