path: root/security/Kconfig.hardening
diff options
authorKees Cook <>2019-07-11 20:59:15 -0700
committerLinus Torvalds <>2019-07-12 11:05:46 -0700
commitba5c5e4a5da443e80a3722e67515de5e37375b18 (patch)
tree8f9b97b9a50c3f81e7c7bb7fedec4765e55bbc32 /security/Kconfig.hardening
parente03a5125ec7bd1d4e8b062816a8813436876dc7c (diff)
arm64: move jump_label_init() before parse_early_param()
While jump_label_init() was moved earlier in the boot process in efd9e03facd0 ("arm64: Use static keys for CPU features"), it wasn't early enough for early params to use it. The old state of things was as described here... init/main.c calls out to arch-specific things before general jump label and early param handling: asmlinkage __visible void __init start_kernel(void) { ... setup_arch(&command_line); ... smp_prepare_boot_cpu(); ... /* parameters may set static keys */ jump_label_init(); parse_early_param(); ... } x86 setup_arch() wants those earlier, so it handles jump label and early param: void __init setup_arch(char **cmdline_p) { ... jump_label_init(); ... parse_early_param(); ... } arm64 setup_arch() only had early param: void __init setup_arch(char **cmdline_p) { ... parse_early_param(); ... } with jump label later in smp_prepare_boot_cpu(): void __init smp_prepare_boot_cpu(void) { ... jump_label_init(); ... } This moves arm64 jump_label_init() from smp_prepare_boot_cpu() to setup_arch(), as done already on x86, in preparation from early param usage in the init_on_alloc/free() series: Link: Signed-off-by: Kees Cook <> Acked-by: Ard Biesheuvel <> Acked-by: Catalin Marinas <> Cc: Alexander Potapenko <> Cc: Qian Cai <> Cc: Will Deacon <> Signed-off-by: Andrew Morton <> Signed-off-by: Linus Torvalds <>
Diffstat (limited to 'security/Kconfig.hardening')
0 files changed, 0 insertions, 0 deletions