mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-09 22:50:41 +00:00
powerpc/64: Add an option to force run-at-load to test relocation
This adds a config option that can help exercise the case when the kernel is not running at PAGE_OFFSET. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Reviewed-by: Balbir Singh <bsingharora@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
5246adec59
commit
70839d2077
@ -479,6 +479,15 @@ config RELOCATABLE
|
|||||||
setting can still be useful to bootwrappers that need to know the
|
setting can still be useful to bootwrappers that need to know the
|
||||||
load address of the kernel (eg. u-boot/mkimage).
|
load address of the kernel (eg. u-boot/mkimage).
|
||||||
|
|
||||||
|
config RELOCATABLE_TEST
|
||||||
|
bool "Test relocatable kernel"
|
||||||
|
depends on (PPC64 && RELOCATABLE)
|
||||||
|
default n
|
||||||
|
help
|
||||||
|
This runs the relocatable kernel at the address it was initially
|
||||||
|
loaded at, which tends to be non-zero and therefore test the
|
||||||
|
relocation code.
|
||||||
|
|
||||||
config CRASH_DUMP
|
config CRASH_DUMP
|
||||||
bool "Build a kdump crash kernel"
|
bool "Build a kdump crash kernel"
|
||||||
depends on PPC64 || 6xx || FSL_BOOKE || (44x && !SMP)
|
depends on PPC64 || 6xx || FSL_BOOKE || (44x && !SMP)
|
||||||
|
@ -107,12 +107,19 @@ __secondary_hold_acknowledge:
|
|||||||
* crash_kernel region. The loader is responsible for
|
* crash_kernel region. The loader is responsible for
|
||||||
* observing the alignment requirement.
|
* observing the alignment requirement.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#ifdef CONFIG_RELOCATABLE_TEST
|
||||||
|
#define RUN_AT_LOAD_DEFAULT 1 /* Test relocation, do not copy to 0 */
|
||||||
|
#else
|
||||||
|
#define RUN_AT_LOAD_DEFAULT 0x72756e30 /* "run0" -- relocate to 0 by default */
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Do not move this variable as kexec-tools knows about it. */
|
/* Do not move this variable as kexec-tools knows about it. */
|
||||||
. = 0x5c
|
. = 0x5c
|
||||||
.globl __run_at_load
|
.globl __run_at_load
|
||||||
__run_at_load:
|
__run_at_load:
|
||||||
DEFINE_FIXED_SYMBOL(__run_at_load)
|
DEFINE_FIXED_SYMBOL(__run_at_load)
|
||||||
.long 0x72756e30 /* "run0" -- relocate to 0 by default */
|
.long RUN_AT_LOAD_DEFAULT
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
. = 0x60
|
. = 0x60
|
||||||
|
Loading…
x
Reference in New Issue
Block a user