From: Christophe Leroy <christophe.leroy@c-s.fr>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
Michael Ellerman <mpe@ellerman.id.au>,
danielwa@cisco.com
Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
linux-arch@vger.kernel.org
Subject: [PATCH 3/9] drivers: of: use cmdline building function
Date: Tue, 2 Apr 2019 09:08:37 +0000 (UTC) [thread overview]
Message-ID: <a65e145d464451885f8d2570f7fca1e433155c13.1554195798.git.christophe.leroy@c-s.fr> (raw)
In-Reply-To: <cover.1554195798.git.christophe.leroy@c-s.fr>
This patch uses the new cmdline building function to
concatenate the of provided cmdline with built-in parts
based on compile-time options.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
---
drivers/of/fdt.c | 23 ++++-------------------
include/linux/cmdline.h | 2 +-
2 files changed, 5 insertions(+), 20 deletions(-)
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index 4734223ab702..c6d941785b37 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -24,6 +24,7 @@
#include <linux/debugfs.h>
#include <linux/serial_core.h>
#include <linux/sysfs.h>
+#include <linux/cmdline.h>
#include <asm/setup.h> /* for COMMAND_LINE_SIZE */
#include <asm/page.h>
@@ -1090,26 +1091,10 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname,
/* Retrieve command line */
p = of_get_flat_dt_prop(node, "bootargs", &l);
- if (p != NULL && l > 0)
- strlcpy(data, p, min((int)l, COMMAND_LINE_SIZE));
+ if (l <= 0)
+ p = NULL;
- /*
- * CONFIG_CMDLINE is meant to be a default in case nothing else
- * managed to set the command line, unless CONFIG_CMDLINE_FORCE
- * is set in which case we override whatever was found earlier.
- */
-#ifdef CONFIG_CMDLINE
-#if defined(CONFIG_CMDLINE_EXTEND)
- strlcat(data, " ", COMMAND_LINE_SIZE);
- strlcat(data, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
-#elif defined(CONFIG_CMDLINE_FORCE)
- strlcpy(data, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
-#else
- /* No arguments from boot loader, use kernel's cmdl*/
- if (!((char *)data)[0])
- strlcpy(data, CONFIG_CMDLINE, COMMAND_LINE_SIZE);
-#endif
-#endif /* CONFIG_CMDLINE */
+ cmdline_build(data, p, COMMAND_LINE_SIZE);
pr_debug("Command line is: %s\n", (char*)data);
diff --git a/include/linux/cmdline.h b/include/linux/cmdline.h
index 8610ddf813ff..afcc00d7628d 100644
--- a/include/linux/cmdline.h
+++ b/include/linux/cmdline.h
@@ -10,7 +10,7 @@
* @src: The starting string or NULL if there isn't one. Must not equal dest.
* @length: the length of dest buffer.
*/
-static __always_inline void cmdline_build(char *dest, char *src, size_t length)
+static __always_inline void cmdline_build(char *dest, const char *src, size_t length)
{
if (length <= 0)
return;
--
2.13.3
next prev parent reply other threads:[~2019-04-02 9:09 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-02 9:08 [PATCH 0/9] Improve boot command line handling Christophe Leroy
2019-04-02 9:08 ` [PATCH 1/9] powerpc: enable appending of CONFIG_CMDLINE to bootloader's cmdline Christophe Leroy
2019-04-02 9:08 ` [PATCH 2/9] Add generic function to build command line Christophe Leroy
2019-04-02 9:08 ` Christophe Leroy [this message]
2019-04-02 9:08 ` [PATCH 4/9] powerpc/prom_init: get rid of PROM_SCRATCH_SIZE Christophe Leroy
2019-05-03 6:59 ` Michael Ellerman
2019-04-02 9:08 ` [PATCH 5/9] powerpc: convert to generic builtin command line Christophe Leroy
2019-04-02 9:08 ` [PATCH 6/9] Add capability to prepend the " Christophe Leroy
2019-04-02 9:08 ` [PATCH 7/9] powerpc: add capability to prepend default " Christophe Leroy
2019-04-02 9:08 ` [PATCH 8/9] Gives arches opportunity to use generically defined boot cmdline manipulation Christophe Leroy
2019-04-02 9:08 ` [PATCH 9/9] powerpc: use generic CMDLINE manipulations Christophe Leroy
2019-12-03 9:12 ` [PATCH 0/9] Improve boot command line handling Christophe Leroy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a65e145d464451885f8d2570f7fca1e433155c13.1554195798.git.christophe.leroy@c-s.fr \
--to=christophe.leroy@c-s.fr \
--cc=benh@kernel.crashing.org \
--cc=danielwa@cisco.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mpe@ellerman.id.au \
--cc=paulus@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).