0001
0002
0003
0004
0005 #ifndef __ASM_PTDUMP_H
0006 #define __ASM_PTDUMP_H
0007
0008 #ifdef CONFIG_PTDUMP_CORE
0009
0010 #include <linux/mm_types.h>
0011 #include <linux/seq_file.h>
0012
0013 struct addr_marker {
0014 unsigned long start_address;
0015 char *name;
0016 };
0017
0018 struct ptdump_info {
0019 struct mm_struct *mm;
0020 const struct addr_marker *markers;
0021 unsigned long base_addr;
0022 };
0023
0024 void ptdump_walk(struct seq_file *s, struct ptdump_info *info);
0025 #ifdef CONFIG_PTDUMP_DEBUGFS
0026 void __init ptdump_debugfs_register(struct ptdump_info *info, const char *name);
0027 #else
0028 static inline void ptdump_debugfs_register(struct ptdump_info *info,
0029 const char *name) { }
0030 #endif
0031 void ptdump_check_wx(void);
0032 #endif
0033
0034 #ifdef CONFIG_DEBUG_WX
0035 #define debug_checkwx() ptdump_check_wx()
0036 #else
0037 #define debug_checkwx() do { } while (0)
0038 #endif
0039
0040 #endif