Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
kexec.c File Reference
#include <linux/capability.h>
#include <linux/mm.h>
#include <linux/file.h>
#include <linux/slab.h>
#include <linux/fs.h>
#include <linux/kexec.h>
#include <linux/mutex.h>
#include <linux/list.h>
#include <linux/highmem.h>
#include <linux/syscalls.h>
#include <linux/reboot.h>
#include <linux/ioport.h>
#include <linux/hardirq.h>
#include <linux/elf.h>
#include <linux/elfcore.h>
#include <linux/utsname.h>
#include <linux/numa.h>
#include <linux/suspend.h>
#include <linux/device.h>
#include <linux/freezer.h>
#include <linux/pm.h>
#include <linux/cpu.h>
#include <linux/console.h>
#include <linux/vmalloc.h>
#include <linux/swap.h>
#include <linux/syscore_ops.h>
#include <asm/page.h>
#include <asm/uaccess.h>
#include <asm/io.h>
#include <asm/sections.h>

Go to the source code of this file.

Macros

#define KIMAGE_NO_DEST   (-1UL)
 
#define for_each_kimage_entry(image, ptr, entry)
 

Functions

int kexec_should_crash (struct task_struct *p)
 
struct pagekimage_alloc_control_pages (struct kimage *image, unsigned int order)
 
 SYSCALL_DEFINE4 (kexec_load, unsigned long, entry, unsigned long, nr_segments, struct kexec_segment __user *, segments, unsigned long, flags)
 
void __weak crash_map_reserved_pages (void)
 
void __weak crash_unmap_reserved_pages (void)
 
void crash_kexec (struct pt_regs *regs)
 
size_t crash_get_memory_size (void)
 
void __weak crash_free_reserved_phys_range (unsigned long begin, unsigned long end)
 
int crash_shrink_memory (unsigned long new_size)
 
void crash_save_cpu (struct pt_regs *regs, int cpu)
 
 module_init (crash_notes_memory_init)
 
int __init parse_crashkernel (char *cmdline, unsigned long long system_ram, unsigned long long *crash_size, unsigned long long *crash_base)
 
void crash_save_vmcoreinfo (void)
 
void vmcoreinfo_append_str (const char *fmt,...)
 
void __attribute__ ((weak))
 
 module_init (crash_save_vmcoreinfo_init)
 

Variables

note_buf_t __percpucrash_notes
 
u32 vmcoreinfo_note [VMCOREINFO_NOTE_SIZE/4]
 
size_t vmcoreinfo_size
 
size_t vmcoreinfo_max_size = sizeof(vmcoreinfo_data)
 
struct resource crashk_res
 
struct kimage * kexec_image
 
struct kimage * kexec_crash_image
 

Macro Definition Documentation

#define for_each_kimage_entry (   image,
  ptr,
  entry 
)
Value:
for (ptr = &image->head; (entry = *ptr) && !(entry & IND_DONE); \
ptr = (entry & IND_INDIRECTION)? \

Definition at line 615 of file kexec.c.

#define KIMAGE_NO_DEST   (-1UL)

Definition at line 109 of file kexec.c.

Function Documentation

void __attribute__ ( (weak)  )
read

Definition at line 1452 of file kexec.c.

void __weak crash_free_reserved_phys_range ( unsigned long  begin,
unsigned long  end 
)

Definition at line 1113 of file kexec.c.

size_t crash_get_memory_size ( void  )

Definition at line 1103 of file kexec.c.

void crash_kexec ( struct pt_regs regs)

Definition at line 1080 of file kexec.c.

void __weak crash_map_reserved_pages ( void  )

Definition at line 1035 of file kexec.c.

void crash_save_cpu ( struct pt_regs regs,
int  cpu 
)

Definition at line 1205 of file kexec.c.

void crash_save_vmcoreinfo ( void  )

Definition at line 1424 of file kexec.c.

int crash_shrink_memory ( unsigned long  new_size)

Definition at line 1126 of file kexec.c.

void __weak crash_unmap_reserved_pages ( void  )

Definition at line 1038 of file kexec.c.

int kexec_should_crash ( struct task_struct p)

Definition at line 58 of file kexec.c.

struct page* kimage_alloc_control_pages ( struct kimage *  image,
unsigned int  order 
)
read

Definition at line 528 of file kexec.c.

module_init ( crash_notes_memory_init  )

Definition at line 1242 of file kexec.c.

module_init ( crash_save_vmcoreinfo_init  )

Definition at line 1522 of file kexec.c.

int __init parse_crashkernel ( char cmdline,
unsigned long long  system_ram,
unsigned long long crash_size,
unsigned long long crash_base 
)

Definition at line 1372 of file kexec.c.

SYSCALL_DEFINE4 ( kexec_load  ,
unsigned  long,
entry  ,
unsigned  long,
nr_segments  ,
struct kexec_segment __user ,
segments  ,
unsigned  long,
flags   
)

Definition at line 939 of file kexec.c.

void vmcoreinfo_append_str ( const char fmt,
  ... 
)

Definition at line 1430 of file kexec.c.

Variable Documentation

note_buf_t __percpu* crash_notes

Definition at line 42 of file kexec.c.

struct resource crashk_res
Initial value:
= {
.name = "Crash kernel",
.start = 0,
.end = 0,
}

Definition at line 51 of file kexec.c.

struct kimage* kexec_crash_image

Definition at line 935 of file kexec.c.

struct kimage* kexec_image

Definition at line 934 of file kexec.c.

size_t vmcoreinfo_max_size = sizeof(vmcoreinfo_data)

Definition at line 48 of file kexec.c.

u32 vmcoreinfo_note[VMCOREINFO_NOTE_SIZE/4]

Definition at line 46 of file kexec.c.

size_t vmcoreinfo_size

Definition at line 47 of file kexec.c.