1 /* SPDX-License-Identifier: GPL-2.0 */
3 #ifndef _LINUX_PTDUMP_H
4 #define _LINUX_PTDUMP_H
6 #include <linux/mm_types.h>
14 /* level is 0:PGD to 4:PTE, or -1 if unknown */
15 void (*note_page
)(struct ptdump_state
*st
, unsigned long addr
,
17 void (*effective_prot
)(struct ptdump_state
*st
, int level
, u64 val
);
18 const struct ptdump_range
*range
;
21 bool ptdump_walk_pgd_level_core(struct seq_file
*m
,
22 struct mm_struct
*mm
, pgd_t
*pgd
,
23 bool checkwx
, bool dmesg
);
24 void ptdump_walk_pgd(struct ptdump_state
*st
, struct mm_struct
*mm
, pgd_t
*pgd
);
25 bool ptdump_check_wx(void);
27 static inline void debug_checkwx(void)
29 if (IS_ENABLED(CONFIG_DEBUG_WX
))
33 #endif /* _LINUX_PTDUMP_H */