Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / include / linux / kcore.h
blob86c0f1d189988c78df5debe7d219ad72ed05321e
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3 * /proc/kcore definitions
4 */
5 #ifndef _LINUX_KCORE_H
6 #define _LINUX_KCORE_H
8 enum kcore_type {
9 KCORE_TEXT,
10 KCORE_VMALLOC,
11 KCORE_RAM,
12 KCORE_VMEMMAP,
13 KCORE_USER,
16 struct kcore_list {
17 struct list_head list;
18 unsigned long addr;
19 size_t size;
20 int type;
23 struct vmcore {
24 struct list_head list;
25 unsigned long long paddr;
26 unsigned long long size;
27 loff_t offset;
30 struct vmcoredd_node {
31 struct list_head list; /* List of dumps */
32 void *buf; /* Buffer containing device's dump */
33 unsigned int size; /* Size of the buffer */
36 #ifdef CONFIG_PROC_KCORE
37 void __init kclist_add(struct kcore_list *, void *, size_t, int type);
39 extern int __init register_mem_pfn_is_ram(int (*fn)(unsigned long pfn));
40 #else
41 static inline
42 void kclist_add(struct kcore_list *new, void *addr, size_t size, int type)
45 #endif
47 #endif /* _LINUX_KCORE_H */