Re: [PATCH v18 00/12] Support page table check on PowerPC

Pasha Tatashin
2025-12-18T17:57:28Z

On Thu, Dec 18, 2025 at 12:10 PM Andrew Donnellan <ajd@linux.ibm.com> wrote:
>
> [I will be leaving IBM in about a month from now, and will also be on leave
> for most of that time starting tomorrow. I've cc'd my personal email, which
> I am going to use for any kernel development I do after I leave, and also
> Srish Srinivasan, who will be taking over some of my work.]
>
> Support page table check on PowerPC. Page table check tracks the usage of
> of page table entries at each level to ensure that anonymous mappings have
> at most one writable consumer, and likewise that file-backed mappings are
> not simultaneously also anonymous mappings.
>
> In order to support this infrastructure, a number of helpers or stubs must be
> defined or updated for all powerpc platforms. Additionally, we separate
> set_pte_at() and set_pte_at_unchecked(), to allow for internal, uninstrumented
> mappings.
>
> On some PowerPC platforms, implementing {pte,pmd,pud}_user_accessible_page()
> requires the address. We revert previous changes that removed the address
> parameter from various interfaces, and add it to some other interfaces,
> in order to allow this.
>
> For now, we don't allow page table check alongside HUGETLB_PAGE, due to the
> arch-specific complexity of set_huge_page_at(). (I'm sure I could figure
> this out, but I have to get this version on this list before I leave my job.)
>
> This series was initially written by Rohan McLure, who has left IBM and
> is no longer working on powerpc.
>
> v18:
> * Rebase on mm-new
> * Add instrumentation for pudp_invalidate()
> * Add cleanup patch to use pte_advance_pfn()
> * Move p{m,u}d_user_accessible_page() to a more sensible place in the code
> * Disable when HUGETLB_PAGE is enabled

Thank you. This series looks good to me.

Pasha