[PATCH] of/fdt: extend cmdline is not avail when kernel grub config ends with "--"

From: hmy
Date: Thu Jun 30 2022 - 07:30:18 EST


From: "3127791@xxxxxx" <3127791@xxxxxx>

when boot_command_line = boot-command "--" CONFIG_CMDLINE,
parse_args() will exit and without parsing the contents of CONFIG_CMDLINE

Signed-off-by: 3127791@xxxxxx <3127791@xxxxxx>
---
drivers/of/fdt.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index a8f5b6532165..6f46dc94766d 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -1160,6 +1160,7 @@ int __init early_init_dt_scan_chosen(char *cmdline)
{
int l, node;
const char *p;
+ char *q;
const void *rng_seed;
const void *fdt = initial_boot_params;

@@ -1186,6 +1187,9 @@ int __init early_init_dt_scan_chosen(char *cmdline)
*/
#ifdef CONFIG_CMDLINE
#if defined(CONFIG_CMDLINE_EXTEND)
+ q = strstr(data, "--");
+ if (q)
+ *q = '\0';
strlcat(cmdline, " ", COMMAND_LINE_SIZE);
strlcat(cmdline, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
#elif defined(CONFIG_CMDLINE_FORCE)
--
2.25.1