• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 	KCORE_OTHER,
15 };
16 
17 struct kcore_list {
18 	struct list_head list;
19 	unsigned long addr;
20 	size_t size;
21 	int type;
22 };
23 
24 struct vmcore {
25 	struct list_head list;
26 	unsigned long long paddr;
27 	unsigned long long size;
28 	loff_t offset;
29 };
30 
31 #ifdef CONFIG_PROC_KCORE
32 extern void kclist_add(struct kcore_list *, void *, size_t, int type);
33 #else
34 static inline
kclist_add(struct kcore_list * new,void * addr,size_t size,int type)35 void kclist_add(struct kcore_list *new, void *addr, size_t size, int type)
36 {
37 }
38 #endif
39 
40 #endif /* _LINUX_KCORE_H */
41