blob: 3ffade4f279848ef4de6d7dc40f89357a9298d44 [file] [log] [blame]
David Howells2f96b8c2013-04-12 00:10:25 +01001/*
2 * /proc/kcore definitions
3 */
4#ifndef _LINUX_KCORE_H
5#define _LINUX_KCORE_H
6
7enum kcore_type {
8 KCORE_TEXT,
9 KCORE_VMALLOC,
10 KCORE_RAM,
11 KCORE_VMEMMAP,
Jia Zhang059befd2018-02-12 22:44:53 +080012 KCORE_USER,
David Howells2f96b8c2013-04-12 00:10:25 +010013 KCORE_OTHER,
14};
15
16struct kcore_list {
17 struct list_head list;
18 unsigned long addr;
19 size_t size;
20 int type;
21};
22
23struct vmcore {
24 struct list_head list;
25 unsigned long long paddr;
26 unsigned long long size;
27 loff_t offset;
28};
29
30#ifdef CONFIG_PROC_KCORE
31extern void kclist_add(struct kcore_list *, void *, size_t, int type);
32#else
33static inline
34void kclist_add(struct kcore_list *new, void *addr, size_t size, int type)
35{
36}
37#endif
38
39#endif /* _LINUX_KCORE_H */