From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 B9F503EFFAF for ; Thu, 28 May 2026 12:59:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779973161; cv=none; b=tTrZS/I81lkCRMJwF2MQIXch8EsIKRT+l23Ta9watibqRTkGSeCGClBL8PGo3pFHhQHPFs5F7f5f0vhc623+KQxapTXj111zPDvJCjpJAH3+4EBwh5bmAo86inTgq70X8WmwDEu5+R6R1UFMvgA2v0XlYvKmZq8v3cswWNFFzrs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779973161; c=relaxed/simple; bh=N+gWn21LRlNh0qDPhftmC/v4smoAB/PkxmC60VR8Ees=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=I/vYqByaDwsRagtus7BXZwFr4ryQ2/ItBuqw0PSWnapKqiKGMlQKPEaio/touRErH9JXWqdfq+IrRNH5nGME6tvy2dMwoOAJ8kP2eY01pjwHCejOpPsvvIOX0UF8Wj1yecYrHxOObq1rbLd8pSk9QXuZNYZGwFzx56mve9fCl5Q= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=JbwLu/x1; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="JbwLu/x1" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B89021F00A3C; Thu, 28 May 2026 12:59:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1779973160; bh=naFlqxbhwX4GtaQGoDTgjjV1+FBkawCwOLQmoy6mDlI=; h=Date:From:To:Cc:Subject:References:In-Reply-To; b=JbwLu/x1FG/SmagCxHsnTSG/bwx/DFQV3rVzN4ApHWGiyZVwb4zr2qkNRDEc0jmmX mVRc/1Pix+QvQllawmggohd/5IRDMZ8kwmnAZZQnpDW73WKevYxMvYypgjfDtChqtj vTovHyngwMUfbe/bu/2eg8DOzGNsubuHH1cu/FfMqhDLMWWS7nOGJImXXoEIZThwcd 7wnPxQd7EmDnNT/U0dyHGlR1D7SeVrFsQnBjcHKwPVNyldsHGd0LBPukpmunI8gWrH EPhShSh4fZMZMxdWT2raVB9v+F402qOB9uBy8aUEwzE0RMwfjb8cHwu/QrYR0yilwq LQgFH9G4MPBHQ== Date: Thu, 28 May 2026 15:59:11 +0300 From: Mike Rapoport To: Vishal Moola Cc: Dave Hansen , linux-mm@kvack.org, linux-kernel@vger.kernel.org, x86@kernel.org, Lu Baolu , xen-devel@lists.xenproject.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Andy Lutomirski , Peter Zijlstra , Juergen Gross , Boris Ostrovsky Subject: Re: [PATCH 0/9] Convert x86 pgd_lists to ptdescs Message-ID: References: <20260527140316.294621-1-vishal.moola@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260527140316.294621-1-vishal.moola@gmail.com> On Wed, May 27, 2026 at 03:03:07PM +0100, Vishal Moola wrote: > This continues the ptdesc conversions for x86[1]. This is a necessary step > in preparation for the separate allocation of ptdescs from struct page. > Once ptdescs are not wrappers, the pgd_list should be used to find our > ptdesc, not page. > > In fact, after patch 4 we can successfully boot a 32-bit x86 kernel > that separately allocates ptdescs. > > All of the patches are rather straightforward, I just kept them split up > for ease of review. There are no intended functional changes as ptdescs > are currently still wrappers around struct page. Looks straightforward to me indeed :) Acked-by: Mike Rapoport (Microsoft) > [1] https://lore.kernel.org/linux-mm/20260211195233.368497-1-vishal.moola@gmail.com/ > > ---------------- > > I've compiled and booted both 64 and 32 bit on a kernel with separately > allocated ptdescs. I ensured the codepaths were hit for all the changes > except Xen. > > This applies cleanly to the tip bot. I'm thinking this can go through > Dave's mm. > > Vishal Moola (9): > x86/mm/pat: Use IS_ENABLED() instead of ifdef > x86/mm/pat: Convert __set_pmd_pte() to ptdescs > x86/mm/pat: Convert collapse_pmd_page() to ptdescs > x86/mm: Convert arch_sync_kernel_mappings() to ptdescs > x86/mm: Convert sync_global_pgds_l5() to ptdescs > x86/mm: Convert sync_global_pgds_l4() to ptdescs > x86/mm: Convert pgd_page_get_mm() to ptdescs > x86/xen: Convert xen_mm_pin_all() to ptdescs > x86/xen: Convert xen_mm_unpin_all() to ptdescs > > arch/x86/include/asm/pgtable.h | 2 +- > arch/x86/include/asm/pgtable_types.h | 2 +- > arch/x86/mm/fault.c | 8 ++++---- > arch/x86/mm/init_64.c | 16 ++++++++-------- > arch/x86/mm/pat/set_memory.c | 17 ++++++++--------- > arch/x86/mm/pgtable.c | 4 ++-- > arch/x86/xen/mmu_pv.c | 22 +++++++++++----------- > 7 files changed, 35 insertions(+), 36 deletions(-) > > -- > 2.54.0 > -- Sincerely yours, Mike.