On Mon, Mar 17, 2025 at 11:48:17AM +0530, Anshuman Khandual wrote:

Hi Anshuman,

...
> --- a/include/linux/ptdump.h
> +++ b/include/linux/ptdump.h
> @@ -11,9 +11,12 @@ struct ptdump_range {
>  };
>  
>  struct ptdump_state {
> -     /* level is 0:PGD to 4:PTE, or -1 if unknown */
> -     void (*note_page)(struct ptdump_state *st, unsigned long addr,
> -                       int level, u64 val);
> +     void (*note_page_pte)(struct ptdump_state *st, unsigned long addr, 
> pte_t pte);
> +     void (*note_page_pmd)(struct ptdump_state *st, unsigned long addr, 
> pmd_t pmd);
> +     void (*note_page_pud)(struct ptdump_state *st, unsigned long addr, 
> pud_t pud);
> +     void (*note_page_p4d)(struct ptdump_state *st, unsigned long addr, 
> p4d_t p4d);
> +     void (*note_page_pgd)(struct ptdump_state *st, unsigned long addr, 
> pgd_t pgd);
> +     void (*note_page_flush)(struct ptdump_state *st);
>       void (*effective_prot)(struct ptdump_state *st, int level, u64 val);

Should you treat effective_prot() similarly?

>       const struct ptdump_range *range;
>  };

Reply via email to