[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0ef88192-2523-418f-8ab7-442766a1c444@arm.com>
Date: Wed, 9 Oct 2024 14:32:05 +0100
From: Ryan Roberts <ryan.roberts@....com>
To: Anshuman Khandual <anshuman.khandual@....com>,
linux-arm-kernel@...ts.infradead.org
Cc: Marc Zyngier <maz@...nel.org>, Oliver Upton <oliver.upton@...ux.dev>,
James Morse <james.morse@....com>, Catalin Marinas
<catalin.marinas@....com>, Will Deacon <will@...nel.org>,
Ard Biesheuvel <ardb@...nel.org>, Mark Rutland <mark.rutland@....com>,
kvmarm@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/5] arm64/mm: Drop PXD_TABLE_BIT
On 05/10/2024 13:38, Anshuman Khandual wrote:
> Clearing PXD_TABLE_BIT i.e bit[1] on a page table entry always operates on
> the assumption that subsequent PXD_VALID i.e bit[0] is set. That's because
> bits[1:0]="01" makes a block mapping. So it is prudent to treat bits[1:0]
> as a single register field, which should be updated as block or table etc.
> Although mk_[pmd|pud]_sect_prot() helpers go to some extent in using these
> PXD_TYPE_SECT macros, their usage is not really consistent else where.
>
> This series removes these table bit clearing for block mapping creation and
> eventually completely drops off those table macros.
Given the issue I just noticed in patch 2, I'm not sure if it's going to be
practical to remove the table bit after all? Sorry I didn't spot this before.
>
> This series applies on v6.12-rc1.
>
> Cc: Marc Zyngier <maz@...nel.org>
> Cc: Oliver Upton <oliver.upton@...ux.dev>
> Cc: James Morse <james.morse@....com>
> Cc: Catalin Marinas <catalin.marinas@....com>
> Cc: Will Deacon <will@...nel.org>
> Cc: Ard Biesheuvel <ardb@...nel.org>
> Cc: Ryan Roberts <ryan.roberts@....com>
> Cc: Mark Rutland <mark.rutland@....com>
> Cc: kvmarm@...ts.linux.dev
> Cc: linux-arm-kernel@...ts.infradead.org
> Cc: linux-kernel@...r.kernel.org
>
> Anshuman Khandual (5):
> arm64/mm: Drop pte_mkhuge()
> arm64/mm: Replace PXD_TABLE_BIT with PXD_TYPE_[MASK|SECT]
> arm64/ptdump: Test PMD_TYPE_MASK for block mapping
> KVM: arm64: ptdump: Test PMD_TYPE_MASK for block mapping
> arm64/mm: Drop PXD_TABLE_BIT
>
> arch/arm64/include/asm/pgtable-hwdef.h | 6 +-----
> arch/arm64/include/asm/pgtable.h | 20 ++++++++------------
> arch/arm64/kvm/ptdump.c | 4 ++--
> arch/arm64/mm/hugetlbpage.c | 2 +-
> arch/arm64/mm/ptdump.c | 8 ++++----
> 5 files changed, 16 insertions(+), 24 deletions(-)
>
Powered by blists - more mailing lists