Thread (35 messages) 35 messages, 5 authors, 2021-04-02

Re: [PATCH v3 01/17] cmdline: Add generic function to build command line.

From: Christophe Leroy <hidden>
Date: 2021-04-02 15:33:15
Also in: linux-arch, linux-arm-kernel, linux-devicetree, linux-mips, linux-riscv, linux-sh, lkml, sparclinux


Le 30/03/2021 à 19:27, Daniel Walker a écrit :
On Fri, Mar 26, 2021 at 01:44:48PM +0000, Christophe Leroy wrote:
quoted
This code provides architectures with a way to build command line
based on what is built in the kernel and what is handed over by the
bootloader, based on selected compile-time options.

Signed-off-by: Christophe Leroy <redacted>
---
v3:
- Addressed comments from Will
- Added capability to have src == dst
---
  include/linux/cmdline.h | 57 +++++++++++++++++++++++++++++++++++++++++
  1 file changed, 57 insertions(+)
  create mode 100644 include/linux/cmdline.h
diff --git a/include/linux/cmdline.h b/include/linux/cmdline.h
new file mode 100644
index 000000000000..dea87edd41be
--- /dev/null
+++ b/include/linux/cmdline.h
@@ -0,0 +1,57 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _LINUX_CMDLINE_H
+#define _LINUX_CMDLINE_H
+
+#include <linux/string.h>
+
+/* Allow architectures to override strlcat, powerpc can't use strings so early */
+#ifndef cmdline_strlcat
+#define cmdline_strlcat strlcat
+#endif
+
+/*
+ * This function will append or prepend a builtin command line to the command
+ * line provided by the bootloader. Kconfig options can be used to alter
+ * the behavior of this builtin command line.
+ * @dst: The destination of the final appended/prepended string.
+ * @src: The starting string or NULL if there isn't one.
+ * @len: the length of dest buffer.
+ */
Append or prepend ? Cisco requires both at the same time. This is why my
implementation provides both. I can't use this with both at once.
I think it can be added as a second step if dimmed necessary. The feeling I have from all the 
discussion is that it's not what people from the community are looking for at the moment.

Anyway, once all architectures are moved to generic handling, I believe it is then easier to split 
CONFIG_CMDLINE in two configuration items in order to provide both appending and prepending at the 
same time.

I see some concerns about risk of double changes, but I have focussed in changing as little as 
possible the existing configuration items, in order to minimise that.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help