#include <linux/buildid.h>
#include <linux/init.h>
#include <linux/utsname.h>
#include <linux/vmalloc.h>
#include <linux/sizes.h>
#include <linux/kexec.h>
#include <linux/memory.h>
#include <linux/cpuhotplug.h>
#include <linux/memblock.h>
#include <linux/kmemleak.h>
#include <asm/page.h>
#include <asm/sections.h>
#include <crypto/sha1.h>
#include "kallsyms_internal.h"
#include "kexec_internal.h"
unsigned char *vmcoreinfo_data;
size_t vmcoreinfo_size;
u32 *vmcoreinfo_note;
static unsigned char *vmcoreinfo_data_safecopy;
Elf_Word *append_elf_note(Elf_Word *buf, char *name, unsigned int type,
void *data, size_t data_len)
{ … }
void final_note(Elf_Word *buf)
{ … }
static void update_vmcoreinfo_note(void)
{ … }
void crash_update_vmcoreinfo_safecopy(void *ptr)
{ … }
void crash_save_vmcoreinfo(void)
{ … }
void vmcoreinfo_append_str(const char *fmt, ...)
{ … }
void __weak arch_crash_save_vmcoreinfo(void)
{ … }
phys_addr_t __weak paddr_vmcoreinfo_note(void)
{ … }
EXPORT_SYMBOL(…);
static int __init crash_save_vmcoreinfo_init(void)
{ … }
subsys_initcall(crash_save_vmcoreinfo_init);