1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * /proc/kcore definitions 4 */ 5 #ifndef _LINUX_KCORE_H 6 #define _LINUX_KCORE_H 7 8 enum kcore_type { 9 KCORE_TEXT, 10 KCORE_VMALLOC, 11 KCORE_RAM, 12 KCORE_VMEMMAP, 13 KCORE_USER, 14 }; 15 16 struct kcore_list { 17 struct list_head list; 18 unsigned long addr; 19 size_t size; 20 int type; 21 }; 22 23 #ifdef CONFIG_PROC_KCORE 24 void __init kclist_add(struct kcore_list *, void *, size_t, int type); 25 26 extern int __init register_mem_pfn_is_ram(int (*fn)(unsigned long pfn)); 27 #else 28 static inline 29 void kclist_add(struct kcore_list *new, void *addr, size_t size, int type) 30 { 31 } 32 #endif 33 34 #endif /* _LINUX_KCORE_H */ 35