Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 
0003 #ifndef _LINUX_PTDUMP_H
0004 #define _LINUX_PTDUMP_H
0005 
0006 #include <linux/mm_types.h>
0007 
0008 struct ptdump_range {
0009     unsigned long start;
0010     unsigned long end;
0011 };
0012 
0013 struct ptdump_state {
0014     /* level is 0:PGD to 4:PTE, or -1 if unknown */
0015     void (*note_page)(struct ptdump_state *st, unsigned long addr,
0016               int level, u64 val);
0017     void (*effective_prot)(struct ptdump_state *st, int level, u64 val);
0018     const struct ptdump_range *range;
0019 };
0020 
0021 void ptdump_walk_pgd(struct ptdump_state *st, struct mm_struct *mm, pgd_t *pgd);
0022 
0023 #endif /* _LINUX_PTDUMP_H */