Re: [PATCH v3] ptdump: add intermediate directory support

From: Catalin Marinas
Date: Wed May 01 2024 - 08:07:51 EST


On Tue, Apr 30, 2024 at 11:05:01AM -0500, Maxwell Bland wrote:
> Add an optional note_non_leaf parameter to ptdump, causing note_page to
> be called on non-leaf descriptors. Implement this functionality on arm64
> by printing table descriptors along with table-specific permission sets.
>
> For arm64, break (1) the uniform number of columns for each descriptor,
> and (2) the coalescing of large PTE regions, which are now split up by
> PMD. This is a "good" thing since it makes the behavior and protection
> bits set on page tables, such as PXNTable, more explicit.
>
> Before:
> 0xffff008440210000-0xffff008440400000 1984K PTE ro NX SHD AF NG UXN M...
> 0xffff008440400000-0xffff008441c00000 24M PMD ro NX SHD AF NG BLK UXN...
> 0xffff008441c00000-0xffff008441dc0000 1792K PTE ro NX SHD AF NG UXN M...
> 0xffff008441dc0000-0xffff00844317b000 20204K PTE RW NX SHD AF NG UXN ...
>
> After (tabulation omitted and spaces condensed):
> 0xffff0fb640200000-0xffff0fb640400000 2M PMD TBL RW x NXTbl UXNTbl ME...
> 0xffff0fb640200000-0xffff0fb640210000 64K PTE RW NX SHD AF NG UXN MEM...
> 0xffff0fb640210000-0xffff0fb640400000 1984K PTE ro NX SHD AF NG UXN M...
> 0xffff0fb640400000-0xffff0fb641c00000 24M PMD BLK ro SHD AF NG NX UXN...
> 0xffff0fb641c00000-0xffff0fb641e00000 2M PMD TBL RW x NXTbl UXNTbl ME...
> 0xffff0fb641c00000-0xffff0fb641dc0000 1792K PTE ro NX SHD AF NG UXN M...
> 0xffff0fb641dc0000-0xffff0fb641e00000 256K PTE RW NX SHD AF NG UXN ME...
>
> v3:
> - Added tabulation to delineate entries
> - Fixed formatting issues with mailer and rebased to mm/linus
>
> v2:
> - Rebased onto linux-next/akpm (the incorrect branch)
>
> Signed-off-by: Maxwell Bland <mbland@xxxxxxxxxxxx>
> ---
> Thank you again to the maintainers for your review of this patch.
>
> To Andrew Morton, I apologize for the malformatted patches last week.It
> will hopefully never happen again. I have tested mailing this patch to
> myself and have confirmed it cleanly merges to mm/linus.
>
> Documentation/arch/arm64/ptdump.rst | 184 +++++++++++++---------
> arch/arm64/mm/ptdump.c | 230 +++++++++++++++++++++++++---
> include/linux/ptdump.h | 1 +
> mm/ptdump.c | 13 ++
> 4 files changed, 332 insertions(+), 96 deletions(-)

Is this v3 replacing v2 here:

https://lore.kernel.org/r/20240423142307.495726312-1-mbland@xxxxxxxxxxxx

or it goes on top? The patch versioning and subject change confuses me.

--
Catalin