| .. | .. |
|---|
| 7 | 7 | #include <linux/fs.h> |
|---|
| 8 | 8 | #include <asm/siginfo.h> |
|---|
| 9 | 9 | |
|---|
| 10 | +struct core_vma_metadata { |
|---|
| 11 | + unsigned long start, end; |
|---|
| 12 | + unsigned long flags; |
|---|
| 13 | + unsigned long dump_size; |
|---|
| 14 | +}; |
|---|
| 15 | + |
|---|
| 10 | 16 | /* |
|---|
| 11 | 17 | * These are the only things you should do on a core-file: use only these |
|---|
| 12 | 18 | * functions to write out all the necessary info. |
|---|
| .. | .. |
|---|
| 16 | 22 | extern int dump_emit(struct coredump_params *cprm, const void *addr, int nr); |
|---|
| 17 | 23 | extern int dump_align(struct coredump_params *cprm, int align); |
|---|
| 18 | 24 | extern void dump_truncate(struct coredump_params *cprm); |
|---|
| 25 | +int dump_user_range(struct coredump_params *cprm, unsigned long start, |
|---|
| 26 | + unsigned long len); |
|---|
| 27 | +int dump_vma_snapshot(struct coredump_params *cprm, int *vma_count, |
|---|
| 28 | + struct core_vma_metadata **vma_meta, |
|---|
| 29 | + size_t *vma_data_size_ptr); |
|---|
| 19 | 30 | #ifdef CONFIG_COREDUMP |
|---|
| 20 | | -extern void do_coredump(const siginfo_t *siginfo); |
|---|
| 31 | +extern void do_coredump(const kernel_siginfo_t *siginfo); |
|---|
| 21 | 32 | #else |
|---|
| 22 | | -static inline void do_coredump(const siginfo_t *siginfo) {} |
|---|
| 33 | +static inline void do_coredump(const kernel_siginfo_t *siginfo) {} |
|---|
| 23 | 34 | #endif |
|---|
| 24 | 35 | |
|---|
| 36 | +extern int core_uses_pid; |
|---|
| 37 | +extern char core_pattern[]; |
|---|
| 38 | +extern unsigned int core_pipe_limit; |
|---|
| 39 | + |
|---|
| 25 | 40 | #endif /* _LINUX_COREDUMP_H */ |
|---|