From nobody Sat Jul 25 20:47:11 2026 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9CEBD36604B; Mon, 13 Jul 2026 23:07:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=193.142.43.55 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783984039; cv=none; b=jYIbS3Z9mGHpHS3geqzbBnDYVrG1FTx6bQlpadCIU9Cf7CqWjFJgfruvVyw6urK5Fr1TJ5ojey48SO2hn7HiudA1J0lBh8pj7GDAGdqa4Ij3/PM825FzG9rezmoBGB/AxeDuWM6hNvVJPW3AfnJ4YojuF5WJ6j2ztdUERKCAIls= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783984039; c=relaxed/simple; bh=6JH54KjE+kyOWJEXacBUq8qCSg1t9gToWYRmFMnvAkY=; h=Date:From:To:Subject:Cc:In-Reply-To:References:MIME-Version: Message-ID:Content-Type; b=OntNxbqv19iZ4GU/3Q3ZSQsMos8AcP4ypWf694dYiA6xMRxx3Dk+FEmtTX1TLuA8T82XR2g7bZpyS1GqeZZarrRVCOiZqfZZtagoBuGJwMvIXKaMXhhigRwDvLLRVXVMGoUcL75nxdzJZgh5FPo4gm7LjRK7ceYv62kr27tdBBw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linutronix.de; spf=pass smtp.mailfrom=linutronix.de; dkim=pass (2048-bit key) header.d=linutronix.de header.i=@linutronix.de header.b=rzIcO8HS; dkim=permerror (0-bit key) header.d=linutronix.de header.i=@linutronix.de header.b=73FSLwvY; arc=none smtp.client-ip=193.142.43.55 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linutronix.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linutronix.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linutronix.de header.i=@linutronix.de header.b="rzIcO8HS"; dkim=permerror (0-bit key) header.d=linutronix.de header.i=@linutronix.de header.b="73FSLwvY" Date: Mon, 13 Jul 2026 23:07:14 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1783984035; h=from:from:sender:sender:reply-to: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=mAvEsPDWJAecNLs2J9dZU2dFIYN2gZiGRi6aZBB3i6M=; b=rzIcO8HSeagpo9getBN8NZWsgur8ZDtS6MjEYOFIDY8nyKhz5Lw3q+0jTNSa8W81V1s9lJ bT7Iw5S673W+wF8uVQlQDjEhvc/53eDkB5KrXmINRdPr5M7APyAik6D8BcJrWaS04K4z6v ArsC2EpRKvpf6qJEq112C9VprJJ0e+7p1rCjUmZUOB8B0sQ4aCrb9PloVWU2tjXbFOddP/ uaJshgPovyuPkTeQJaSdSyMNkn6N800bojjXV+fdMLhtF1vWPXsPQ3qo4gE9TyoXWqZZXS UbXnT83Ag6ikO6Y9/+TJIzlwbF8deU3RGA1UHJ8smhmB7b9L2bNvmZwCc0uujQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1783984035; h=from:from:sender:sender:reply-to: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=mAvEsPDWJAecNLs2J9dZU2dFIYN2gZiGRi6aZBB3i6M=; b=73FSLwvYVaJotCWbTQslRXEk82O++IR2wh8EqWbV/es2D71hGKc8sjkQhPqjp7sjzM8n79 HmIz2hbrCHTE/RAg== From: "tip-bot2 for Vishal Moola" Sender: tip-bot2@linutronix.de Reply-to: linux-kernel@vger.kernel.org To: linux-tip-commits@vger.kernel.org Subject: [tip: x86/mm] x86/mm: Convert pgd_page_get_mm() to ptdescs Cc: Vishal Moola , Dave Hansen , William Kucharski , "Mike Rapoport (Microsoft)" , x86@kernel.org, linux-kernel@vger.kernel.org In-Reply-To: <20260629185742.126987-8-vishal.moola@gmail.com> References: <20260629185742.126987-8-vishal.moola@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-ID: <178398403440.1844600.17090728243534856208.tip-bot2@tip-bot2> Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails Precedence: bulk Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable The following commit has been merged into the x86/mm branch of tip: Commit-ID: dd9850c91665a56babd964df19de2cb90a98c538 Gitweb: https://git.kernel.org/tip/dd9850c91665a56babd964df19de2cb90= a98c538 Author: Vishal Moola AuthorDate: Mon, 29 Jun 2026 11:57:40 -07:00 Committer: Dave Hansen CommitterDate: Mon, 13 Jul 2026 15:55:10 -07:00 x86/mm: Convert pgd_page_get_mm() to ptdescs Convert pgd_page_get_mm() to ptdescs. Define struct ptdesc in our pgtable_types so that our declarations recognize ptdesc as an appropriate page table type. Now that all callers are using ptdescs, we can pass in that ptdesc to get the underlying mm_struct. Signed-off-by: Vishal Moola Signed-off-by: Dave Hansen Reviewed-by: William Kucharski Acked-by: Mike Rapoport (Microsoft) Link: https://patch.msgid.link/20260629185742.126987-8-vishal.moola@gmail.c= om --- arch/x86/include/asm/pgtable.h | 2 +- arch/x86/include/asm/pgtable_types.h | 2 +- arch/x86/mm/fault.c | 2 +- arch/x86/mm/init_64.c | 4 ++-- arch/x86/mm/pgtable.c | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h index ac295ca..dd046f2 100644 --- a/arch/x86/include/asm/pgtable.h +++ b/arch/x86/include/asm/pgtable.h @@ -50,7 +50,7 @@ void ptdump_walk_user_pgd_level_checkwx(void); extern spinlock_t pgd_lock; extern struct list_head pgd_list; =20 -extern struct mm_struct *pgd_page_get_mm(struct page *page); +struct mm_struct *pgd_page_get_mm(struct ptdesc *pt); =20 extern pmdval_t early_pmd_flags; =20 diff --git a/arch/x86/include/asm/pgtable_types.h b/arch/x86/include/asm/pg= table_types.h index 2ec250b..95c7f45 100644 --- a/arch/x86/include/asm/pgtable_types.h +++ b/arch/x86/include/asm/pgtable_types.h @@ -512,7 +512,7 @@ static inline pgprot_t pgprot_large_2_4k(pgprot_t pgpro= t) return __pgprot(protval_large_2_4k(pgprot_val(pgprot))); } =20 - +struct ptdesc; typedef struct page *pgtable_t; =20 extern pteval_t __supported_pte_mask; diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c index c31ffea..aa88370 100644 --- a/arch/x86/mm/fault.c +++ b/arch/x86/mm/fault.c @@ -282,7 +282,7 @@ void arch_sync_kernel_mappings(unsigned long start, uns= igned long end) spinlock_t *pgt_lock; =20 /* the pgt_lock only for Xen */ - pgt_lock =3D &pgd_page_get_mm(ptdesc_page(ptdesc))->page_table_lock; + pgt_lock =3D &pgd_page_get_mm(ptdesc)->page_table_lock; =20 spin_lock(pgt_lock); vmalloc_sync_one(ptdesc_address(ptdesc), addr); diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c index 1441f5f..bf529a9 100644 --- a/arch/x86/mm/init_64.c +++ b/arch/x86/mm/init_64.c @@ -152,7 +152,7 @@ static void sync_global_pgds_l5(unsigned long start, un= signed long end) =20 pgd =3D (pgd_t *)ptdesc_address(ptdesc) + pgd_index(addr); /* the pgt_lock only for Xen */ - pgt_lock =3D &pgd_page_get_mm(ptdesc_page(ptdesc))->page_table_lock; + pgt_lock =3D &pgd_page_get_mm(ptdesc)->page_table_lock; spin_lock(pgt_lock); =20 if (!pgd_none(*pgd_ref) && !pgd_none(*pgd)) @@ -195,7 +195,7 @@ static void sync_global_pgds_l4(unsigned long start, un= signed long end) pgd =3D (pgd_t *)ptdesc_address(ptdesc) + pgd_index(addr); p4d =3D p4d_offset(pgd, addr); /* the pgt_lock only for Xen */ - pgt_lock =3D &pgd_page_get_mm(ptdesc_page(ptdesc))->page_table_lock; + pgt_lock =3D &pgd_page_get_mm(ptdesc)->page_table_lock; spin_lock(pgt_lock); =20 if (!p4d_none(*p4d_ref) && !p4d_none(*p4d)) diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtable.c index f32facd..cb03f5a 100644 --- a/arch/x86/mm/pgtable.c +++ b/arch/x86/mm/pgtable.c @@ -74,9 +74,9 @@ static void pgd_set_mm(pgd_t *pgd, struct mm_struct *mm) virt_to_ptdesc(pgd)->pt_mm =3D mm; } =20 -struct mm_struct *pgd_page_get_mm(struct page *page) +struct mm_struct *pgd_page_get_mm(struct ptdesc *pt) { - return page_ptdesc(page)->pt_mm; + return pt->pt_mm; } =20 static void pgd_ctor(struct mm_struct *mm, pgd_t *pgd)