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 DC7EEC3ABC6 for ; Wed, 7 May 2025 09:26:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3ACAE6B008A; Wed, 7 May 2025 05:26:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1CB2E6B0093; Wed, 7 May 2025 05:26:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F35AE6B008C; Wed, 7 May 2025 05:26:24 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id D3A856B008A for ; Wed, 7 May 2025 05:26:24 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id B68E21D0527 for ; Wed, 7 May 2025 09:26:25 +0000 (UTC) X-FDA: 83415581130.08.551CEA3 Received: from out30-110.freemail.mail.aliyun.com (out30-110.freemail.mail.aliyun.com [115.124.30.110]) by imf20.hostedemail.com (Postfix) with ESMTP id 980881C000E for ; Wed, 7 May 2025 09:26:22 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b="NPj/2KrL"; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf20.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.110 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1746609983; a=rsa-sha256; cv=none; b=j8tAK4bVCuBouqo+lSTk2ulAzWht7BZSOdYm5LlUKrtFBTnhjcBYXWCmmaYsSh0MCd9bFc vt0tr86xM6MfR2PFWfPKM2CD+eTftEFdzjFQSOIMH1cOr13E89Te1mdMUofnoXvASg0TkN uvD8fnf4zuo0FczC0wB+9YUOCLx+PFM= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b="NPj/2KrL"; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf20.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.110 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1746609983; 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:references:dkim-signature; bh=XmgMg6STtlyinvSAL5WS1Sr98izqTtA9oefqvb3PDJw=; b=VLJsbzfpFHhAa8yCscBVx99l+CL3W58B6KRgOfXACjTAdCWUNOPY8V+EO8XdkdSk3QsOhm PDFnYW6XDdxokPXeKc19TyhFbbwcEJhFAwINnxPwU007veilMZBsLGqcFs6tc5q4UldWEp WxNHbos9xZPWF9VAa8wIFKDoZrIsxSw= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1746609979; h=From:To:Subject:Date:Message-ID:MIME-Version; bh=XmgMg6STtlyinvSAL5WS1Sr98izqTtA9oefqvb3PDJw=; b=NPj/2KrL+E0BIIqu9IYVLAtHLaQWKhsLc3hW46bJ+/0GFtbxknmZ2ahuUwAK09A2KJWuC13+/ACJQlroG1PDD5n1+885cL9J+6Gd1WGroneAhNzB9rSIhS1UeuSm6a1Mgi9wRE9vCxDAi1yEy7TKJwVmOyhJ2SaxjZ4eWusZ7m4= Received: from localhost(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0WZpDwwa_1746609976 cluster:ay36) by smtp.aliyun-inc.com; Wed, 07 May 2025 17:26:17 +0800 From: Baolin Wang To: akpm@linux-foundation.org, willy@infradead.org, david@redhat.com Cc: hannes@cmpxchg.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, ziy@nvidia.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com, mhocko@suse.com, baolin.wang@linux.alibaba.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/2] mm: khugepaged: convert set_huge_pmd() to take a folio Date: Wed, 7 May 2025 17:26:12 +0800 Message-ID: <8e33c8a65b46170dfd8ba6715d2115856a55b8f6.1746609191.git.baolin.wang@linux.alibaba.com> X-Mailer: git-send-email 2.43.5 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 980881C000E X-Stat-Signature: rdcas8dciw8nmsyqprpihhmbuby7mirh X-Rspam-User: X-HE-Tag: 1746609982-423363 X-HE-Meta: U2FsdGVkX19Fc5VgzgRQOL9ygKCe7z7HVl/MkfMkRaqNofAruV9UYoPU/rTN8BGkBTvqq88Y2Xc1m/yQ2R4dmcucVJLNL/djIKXB/0W6ICD42R60jT4sqCwlc9XeCd3fNzeN9DBPkwTt0O9FS01U2ov81l4HcTUwJUdkrctJiMrqHPuBeHPY4qfmBsfM0piyf9GwwaqXzUxKDDfGDIb02IJOGfHFe2/5aLVgZV8riI30uy0DGGfSWNDqtp1QFLgTBOw4F5yC7dwkww0vizYu09NSr97EUSGIO2+Hao5pDyDejhS6WCongBUlJg3pOI3qaJLzySGv5Ncw7vMwFANAt2US2YWwPIOIp9TvwFfX9xoZXhTfFMXR+GxxPptrGWeD5aUIfV3VSUNeWakQsrop7DTukeRtJVulcGK/gn0L+Ca4xR0xPbF3zA2SG9qi8K55Wmyo4YzdTBa22kUXXp+hfvB4EwjGKKEEEec7Bs7ie0nWKRJvU/OsGyJ8ZPJ51v7GtAEYOUNmXWZ4fNTMO2CRPfJYce9NadgJXHnY9sUEZ4JuaSDSDSyiZLITC9vihZb5FOgNLZS3PdVx/ZYKokgmDEDgKbyyLj1QVJBe7f/JOFal6FX9kskPzWQS5YsaEPQlaEJcrgiyHs4hCQ358S10Aou9RBrIwHC4Z8t464FRbnIkLWwOjSkJCVkX6tE5uR0gArHSSw02OCIqGKNwsef7eCW3Qe6F/q65sg8iVuj0Xzd0LlBRPrN/021SFBHcVx5a88WzTdKeD8V5B62t4GF+q88FoFel93/XChBgMXbmgM3SuIJTUvx3AxnjmNbRCbYo9ZNS1azUdPHXQUYcZqXPU4HKJlWMnW012Pntk/McQmNdVO28g18cbsMw/rgHws7fmWErK6ikQxzJkE8FI63rZx9bBOhyrNIZe9kfai/UHlrW1q8ZWUH33py4vhs1Qu+fkTsJYK+mvwmBXzUpQjz HKi9GELg MUy/OUAnkg18S8SKg+L5hI3RH04hBgiHvsCW0DdsyAn5xpVJjafBDTRz7DNmHtBCtRVXYla5XtczF6wY6Oo0Nllx/OGYDessXvygwJAzmGEf0eKfajdlXW6camB9NNwwzDd6o9cUqAe+n8LlSvCdyGFuNjmeeOkAFqCx7wCdTHiCEGyKCgCQgY+J7DJOqklLRgbSDuyhHHvz3MyOs+05LJtrIzaWDa0OUzmipyN4/gOrCGySX/j2c55ipubuX3E+2qW/X9FOQGQkhfiFooHJ8JTVdHQ== 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: We've already gotten the stable locked folio in collapse_pte_mapped_thp(), so just use folio for set_huge_pmd() to set the PMD entry, which is more straightforward. Signed-off-by: Baolin Wang --- mm/khugepaged.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mm/khugepaged.c b/mm/khugepaged.c index b04b6a770afe..0215ef6095d9 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -1467,7 +1467,7 @@ static void collect_mm_slot(struct khugepaged_mm_slot *mm_slot) #ifdef CONFIG_SHMEM /* hpage must be locked, and mmap_lock must be held */ static int set_huge_pmd(struct vm_area_struct *vma, unsigned long addr, - pmd_t *pmdp, struct page *hpage) + pmd_t *pmdp, struct folio *folio) { struct vm_fault vmf = { .vma = vma, @@ -1476,13 +1476,13 @@ static int set_huge_pmd(struct vm_area_struct *vma, unsigned long addr, .pmd = pmdp, }; - VM_BUG_ON(!PageTransHuge(hpage)); + VM_BUG_ON(!folio_test_large(folio)); mmap_assert_locked(vma->vm_mm); - if (do_set_pmd(&vmf, hpage)) + if (do_set_pmd(&vmf, &folio->page)) return SCAN_FAIL; - get_page(hpage); + folio_get(folio); return SCAN_SUCCEED; } @@ -1689,7 +1689,7 @@ int collapse_pte_mapped_thp(struct mm_struct *mm, unsigned long addr, maybe_install_pmd: /* step 5: install pmd entry */ result = install_pmd - ? set_huge_pmd(vma, haddr, pmd, &folio->page) + ? set_huge_pmd(vma, haddr, pmd, folio) : SCAN_SUCCEED; goto drop_folio; abort: -- 2.43.5