diff options
author | Huacai Chen <chenhuacai@loongson.cn> | 2023-11-21 10:03:25 +0300 |
---|---|---|
committer | Huacai Chen <chenhuacai@loongson.cn> | 2023-11-21 10:03:25 +0300 |
commit | 902d75cdf0cf0a3fb58550089ee519abf12566f5 (patch) | |
tree | 73510556d509e73623459e72fb55909c4d31ea84 | |
parent | ee2daf7102f42007b7bf5dbd1ae76478ee62c512 (diff) | |
download | linux-902d75cdf0cf0a3fb58550089ee519abf12566f5.tar.xz |
LoongArch: Silence the boot warning about 'nokaslr'
The kernel parameter 'nokaslr' is handled before start_kernel(), so we
don't need early_param() to mark it technically. But it can cause a boot
warning as follows:
Unknown kernel command line parameters "nokaslr", will be passed to user space.
When we use 'init=/bin/bash', 'nokaslr' which passed to user space will
even cause a kernel panic. So we use early_param() to mark 'nokaslr',
simply print a notice and silence the boot warning (also fix a potential
panic). This logic is similar to RISC-V.
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
-rw-r--r-- | arch/loongarch/kernel/relocate.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/loongarch/kernel/relocate.c b/arch/loongarch/kernel/relocate.c index 288b739ca88d..1acfa704c8d0 100644 --- a/arch/loongarch/kernel/relocate.c +++ b/arch/loongarch/kernel/relocate.c @@ -102,6 +102,14 @@ static inline __init unsigned long get_random_boot(void) return hash; } +static int __init nokaslr(char *p) +{ + pr_info("KASLR is disabled.\n"); + + return 0; /* Print a notice and silence the boot warning */ +} +early_param("nokaslr", nokaslr); + static inline __init bool kaslr_disabled(void) { char *str; |