Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2f96b8c1 DH |
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, | |
f4d6e459 | 13 | KCORE_USER, |
2f96b8c1 DH |
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 | |
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 */ |