[PATCH 4/4] powerpc/prom: fix early parsing of 'disable_radix' parameter
Hari Bathini
hbathini at linux.vnet.ibm.com
Thu Aug 3 19:25:26 AEST 2017
Early cmdline parser looks for "disable_radix" substring in the cmdline
string but it could also succeed when cmdline string contains parameters
like 'x_disable_radix' or disable_radix_type=' or such causing undesired
actions. Add support to skip proceeding in such cases.
Fixes: 014d02cbf16b ("powerpc: Update to new option-vector-5 format for CAS")
Cc: stable at vger.kernel.org # 4.11+
Cc: Suraj Jitindar Singh <sjitindarsingh at gmail.com>
Cc: Michael Ellerman <mpe at ellerman.id.au>
Signed-off-by: Hari Bathini <hbathini at linux.vnet.ibm.com>
---
arch/powerpc/kernel/prom_init.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
index 3057a32..169e32c 100644
--- a/arch/powerpc/kernel/prom_init.c
+++ b/arch/powerpc/kernel/prom_init.c
@@ -660,8 +660,16 @@ static void __init early_cmdline_parse(void)
opt = strstr(prom_cmd_line, "disable_radix");
if (opt) {
- prom_debug("Radix disabled from cmdline\n");
- prom_radix_disable = true;
+ /*
+ * Check if this is prefix or suffix of some other parameter
+ * before proceeding.
+ */
+ p = (char *)(opt + 13);
+ if ((*p == ' ' || *p == '"' || *p == '\0') &&
+ is_substring_param(prom_cmd_line, opt)) {
+ prom_debug("Radix disabled from cmdline\n");
+ prom_radix_disable = true;
+ }
}
}
More information about the Linuxppc-dev
mailing list