summaryrefslogtreecommitdiff
path: root/linux-dragon/0003-kexec-add-kexec_load_disabled-boot-option.patch
diff options
context:
space:
mode:
authorJohn Vogel <jvogel@stygian.me>2026-07-28 05:01:42 -0400
committerJohn Vogel <jvogel@stygian.me>2026-07-28 05:01:42 -0400
commit7bc38f416153ad68e09fe0c70b349ee19a86a2e6 (patch)
tree19bbfa978490bd33adb7a9a39255dd7ac2692b5e /linux-dragon/0003-kexec-add-kexec_load_disabled-boot-option.patch
downloaddragon-7bc38f416153ad68e09fe0c70b349ee19a86a2e6.tar.gz
dragon/linux-dragon: new aport
Linux kernel for the Radxa Dragon Q6A. Patch source is from https://github.com/radxa/kernel from the linux-7.0.11 branch. Patch is up-to-date with radxa kernel sources at this time.
Diffstat (limited to 'linux-dragon/0003-kexec-add-kexec_load_disabled-boot-option.patch')
-rw-r--r--linux-dragon/0003-kexec-add-kexec_load_disabled-boot-option.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/linux-dragon/0003-kexec-add-kexec_load_disabled-boot-option.patch b/linux-dragon/0003-kexec-add-kexec_load_disabled-boot-option.patch
new file mode 100644
index 0000000..16e131a
--- /dev/null
+++ b/linux-dragon/0003-kexec-add-kexec_load_disabled-boot-option.patch
@@ -0,0 +1,58 @@
+From d1774c0a8f05e59a438123c8f01f0c3586e6e608 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Thu, 14 Jul 2022 13:23:51 +0200
+Subject: [PATCH 3/5] kexec: add kexec_load_disabled boot option
+
+Make kexec_load disabled by default and add a boot option to enable it:
+kexec_load_disabled=0
+
+Signed-off-by: Achill Gilgenast <achill@achill.org>
+---
+ init/main.c | 8 +++++---
+ kernel/kexec_core.c | 11 ++++++++++-
+ 2 files changed, 15 insertions(+), 4 deletions(-)
+
+diff --git a/init/main.c b/init/main.c
+index 07a3116811c5..82f217ab7e61 100644
+--- a/init/main.c
++++ b/init/main.c
+@@ -559,9 +559,11 @@ static int __init unknown_bootoption(char *param, char *val,
+ repair_env_string(param, val);
+
+ /* Handle bootloader identifier */
+- for (int i = 0; bootloader[i]; i++) {
+- if (strstarts(param, bootloader[i]))
+- return 0;
++ if (!strstarts(param, "kexec_load_disabled=")) {
++ for (int i = 0; bootloader[i]; i++) {
++ if (strstarts(param, bootloader[i]))
++ return 0;
++ }
+ }
+
+ /* Handle obsolete-style parameters */
+diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
+index fa00b239c5d9..091ac1dd6e98 100644
+--- a/kernel/kexec_core.c
++++ b/kernel/kexec_core.c
+@@ -1032,7 +1032,16 @@ static struct kexec_load_limit load_limit_panic = {
+
+ struct kimage *kexec_image;
+ struct kimage *kexec_crash_image;
+-static int kexec_load_disabled;
++static int kexec_load_disabled = 1;
++
++static int __init kexec_load_disabled_setup(char *str)
++{
++ unsigned long disabled;
++ if (!kstrtoul(str, 0, &disabled))
++ kexec_load_disabled = disabled ? 1 : 0;
++ return 1;
++}
++__setup("kexec_load_disabled=", kexec_load_disabled_setup);
+
+ #ifdef CONFIG_SYSCTL
+ static int kexec_limit_handler(const struct ctl_table *table, int write,
+--
+2.52.0
+