kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE
Rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE, because control page is used for not only code on some platform. For example in kexec jump, it is used for data and stack too. [akpm@linux-foundation.org: unbreak powerpc and arm, finish conversion] Signed-off-by: Huang Ying <ying.huang@intel.com> Cc: Pavel Machek <pavel@ucw.cz> Cc: "Rafael J. Wysocki" <rjw@sisk.pl> Cc: "Eric W. Biederman" <ebiederm@xmission.com> Cc: Vivek Goyal <vgoyal@redhat.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Russell King <rmk@arm.linux.org.uk> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
7ade3fcc1f
Коммит
163f6876f5
|
@ -10,7 +10,7 @@
|
|||
/* Maximum address we can use for the control code buffer */
|
||||
#define KEXEC_CONTROL_MEMORY_LIMIT (-1UL)
|
||||
|
||||
#define KEXEC_CONTROL_CODE_SIZE 4096
|
||||
#define KEXEC_CONTROL_PAGE_SIZE 4096
|
||||
|
||||
#define KEXEC_ARCH KEXEC_ARCH_ARM
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ void machine_kexec(struct kimage *image)
|
|||
|
||||
|
||||
flush_icache_range((unsigned long) reboot_code_buffer,
|
||||
(unsigned long) reboot_code_buffer + KEXEC_CONTROL_CODE_SIZE);
|
||||
(unsigned long) reboot_code_buffer + KEXEC_CONTROL_PAGE_SIZE);
|
||||
printk(KERN_INFO "Bye!\n");
|
||||
|
||||
cpu_proc_fin();
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
/* Maximum address we can use for the control code buffer */
|
||||
#define KEXEC_CONTROL_MEMORY_LIMIT TASK_SIZE
|
||||
|
||||
#define KEXEC_CONTROL_CODE_SIZE (8192 + 8192 + 4096)
|
||||
#define KEXEC_CONTROL_PAGE_SIZE (8192 + 8192 + 4096)
|
||||
|
||||
/* The native architecture */
|
||||
#define KEXEC_ARCH KEXEC_ARCH_IA_64
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#define KEXEC_CONTROL_MEMORY_LIMIT TASK_SIZE
|
||||
#endif
|
||||
|
||||
#define KEXEC_CONTROL_CODE_SIZE 4096
|
||||
#define KEXEC_CONTROL_PAGE_SIZE 4096
|
||||
|
||||
/* The native architecture */
|
||||
#ifdef __powerpc64__
|
||||
|
|
|
@ -51,7 +51,7 @@ void default_machine_kexec(struct kimage *image)
|
|||
relocate_new_kernel_size);
|
||||
|
||||
flush_icache_range(reboot_code_buffer,
|
||||
reboot_code_buffer + KEXEC_CONTROL_CODE_SIZE);
|
||||
reboot_code_buffer + KEXEC_CONTROL_PAGE_SIZE);
|
||||
printk(KERN_INFO "Bye!\n");
|
||||
|
||||
/* now call it */
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#define KEXEC_CONTROL_MEMORY_LIMIT (1UL<<31)
|
||||
|
||||
/* Allocate one page for the pdp and the second for the code */
|
||||
#define KEXEC_CONTROL_CODE_SIZE 4096
|
||||
#define KEXEC_CONTROL_PAGE_SIZE 4096
|
||||
|
||||
/* The native architecture */
|
||||
#define KEXEC_ARCH KEXEC_ARCH_S390
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
/* Maximum address we can use for the control code buffer */
|
||||
#define KEXEC_CONTROL_MEMORY_LIMIT TASK_SIZE
|
||||
|
||||
#define KEXEC_CONTROL_CODE_SIZE 4096
|
||||
#define KEXEC_CONTROL_PAGE_SIZE 4096
|
||||
|
||||
/* The native architecture */
|
||||
#define KEXEC_ARCH KEXEC_ARCH_SH
|
||||
|
|
|
@ -78,7 +78,7 @@ static void load_segments(void)
|
|||
/*
|
||||
* A architecture hook called to validate the
|
||||
* proposed image and prepare the control pages
|
||||
* as needed. The pages for KEXEC_CONTROL_CODE_SIZE
|
||||
* as needed. The pages for KEXEC_CONTROL_PAGE_SIZE
|
||||
* have been allocated, but the segments have yet
|
||||
* been copied into the kernel.
|
||||
*
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
/* Maximum address we can use for the control code buffer */
|
||||
#define KEXEC_CONTROL_MEMORY_LIMIT (0x20000000)
|
||||
|
||||
#define KEXEC_CONTROL_CODE_SIZE 4096
|
||||
#define KEXEC_CONTROL_PAGE_SIZE 4096
|
||||
|
||||
/* The native architecture */
|
||||
#define KEXEC_ARCH KEXEC_ARCH_MIPS
|
||||
|
|
|
@ -63,7 +63,7 @@
|
|||
/* Maximum address we can use for the control code buffer */
|
||||
# define KEXEC_CONTROL_MEMORY_LIMIT TASK_SIZE
|
||||
|
||||
# define KEXEC_CONTROL_CODE_SIZE 4096
|
||||
# define KEXEC_CONTROL_PAGE_SIZE 4096
|
||||
|
||||
/* The native architecture */
|
||||
# define KEXEC_ARCH KEXEC_ARCH_386
|
||||
|
@ -79,7 +79,7 @@
|
|||
# define KEXEC_CONTROL_MEMORY_LIMIT (0xFFFFFFFFFFUL)
|
||||
|
||||
/* Allocate one page for the pdp and the second for the code */
|
||||
# define KEXEC_CONTROL_CODE_SIZE (4096UL + 4096UL)
|
||||
# define KEXEC_CONTROL_PAGE_SIZE (4096UL + 4096UL)
|
||||
|
||||
/* The native architecture */
|
||||
# define KEXEC_ARCH KEXEC_ARCH_X86_64
|
||||
|
|
|
@ -25,8 +25,8 @@
|
|||
#error KEXEC_CONTROL_MEMORY_LIMIT not defined
|
||||
#endif
|
||||
|
||||
#ifndef KEXEC_CONTROL_CODE_SIZE
|
||||
#error KEXEC_CONTROL_CODE_SIZE not defined
|
||||
#ifndef KEXEC_CONTROL_PAGE_SIZE
|
||||
#error KEXEC_CONTROL_PAGE_SIZE not defined
|
||||
#endif
|
||||
|
||||
#ifndef KEXEC_ARCH
|
||||
|
|
|
@ -77,7 +77,7 @@ int kexec_should_crash(struct task_struct *p)
|
|||
*
|
||||
* The code for the transition from the current kernel to the
|
||||
* the new kernel is placed in the control_code_buffer, whose size
|
||||
* is given by KEXEC_CONTROL_CODE_SIZE. In the best case only a single
|
||||
* is given by KEXEC_CONTROL_PAGE_SIZE. In the best case only a single
|
||||
* page of memory is necessary, but some architectures require more.
|
||||
* Because this memory must be identity mapped in the transition from
|
||||
* virtual to physical addresses it must live in the range
|
||||
|
@ -242,7 +242,7 @@ static int kimage_normal_alloc(struct kimage **rimage, unsigned long entry,
|
|||
*/
|
||||
result = -ENOMEM;
|
||||
image->control_code_page = kimage_alloc_control_pages(image,
|
||||
get_order(KEXEC_CONTROL_CODE_SIZE));
|
||||
get_order(KEXEC_CONTROL_PAGE_SIZE));
|
||||
if (!image->control_code_page) {
|
||||
printk(KERN_ERR "Could not allocate control_code_buffer\n");
|
||||
goto out;
|
||||
|
@ -317,7 +317,7 @@ static int kimage_crash_alloc(struct kimage **rimage, unsigned long entry,
|
|||
*/
|
||||
result = -ENOMEM;
|
||||
image->control_code_page = kimage_alloc_control_pages(image,
|
||||
get_order(KEXEC_CONTROL_CODE_SIZE));
|
||||
get_order(KEXEC_CONTROL_PAGE_SIZE));
|
||||
if (!image->control_code_page) {
|
||||
printk(KERN_ERR "Could not allocate control_code_buffer\n");
|
||||
goto out;
|
||||
|
|
Загрузка…
Ссылка в новой задаче