{"id":1458786,"url":"http://patchwork.ozlabs.org/api/patches/1458786/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/3d5d4281f264ec634f17252b6fef558ca4334243.1616765870.git.christophe.leroy@csgroup.eu/","project":{"id":2,"url":"http://patchwork.ozlabs.org/api/projects/2/?format=json","name":"Linux PPC development","link_name":"linuxppc-dev","list_id":"linuxppc-dev.lists.ozlabs.org","list_email":"linuxppc-dev@lists.ozlabs.org","web_url":"https://github.com/linuxppc/wiki/wiki","scm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git","webscm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/","list_archive_url":"https://lore.kernel.org/linuxppc-dev/","list_archive_url_format":"https://lore.kernel.org/linuxppc-dev/{}/","commit_url_format":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}"},"msgid":"<3d5d4281f264ec634f17252b6fef558ca4334243.1616765870.git.christophe.leroy@csgroup.eu>","list_archive_url":"https://lore.kernel.org/linuxppc-dev/3d5d4281f264ec634f17252b6fef558ca4334243.1616765870.git.christophe.leroy@csgroup.eu/","date":"2021-03-26T13:44:51","name":"[v3,04/17] powerpc: Convert to GENERIC_CMDLINE","commit_ref":null,"pull_url":null,"state":"not-applicable","archived":false,"hash":"56e2eda1d10578203a473a8e398c25a7a8304ed6","submitter":{"id":79086,"url":"http://patchwork.ozlabs.org/api/people/79086/?format=json","name":"Christophe Leroy","email":"christophe.leroy@csgroup.eu"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/3d5d4281f264ec634f17252b6fef558ca4334243.1616765870.git.christophe.leroy@csgroup.eu/mbox/","series":[{"id":236020,"url":"http://patchwork.ozlabs.org/api/series/236020/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=236020","date":"2021-03-26T13:44:49","name":"Implement GENERIC_CMDLINE","version":3,"mbox":"http://patchwork.ozlabs.org/series/236020/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/1458786/comments/","check":"success","checks":"http://patchwork.ozlabs.org/api/patches/1458786/checks/","tags":{},"related":[{"id":1461761,"url":"http://patchwork.ozlabs.org/api/patches/1461761/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/bcc28f6552708885aecb14a7106b65afbffcc294.1617375802.git.christophe.leroy@csgroup.eu/","msgid":"<bcc28f6552708885aecb14a7106b65afbffcc294.1617375802.git.christophe.leroy@csgroup.eu>","list_archive_url":"https://lore.kernel.org/linuxppc-dev/bcc28f6552708885aecb14a7106b65afbffcc294.1617375802.git.christophe.leroy@csgroup.eu/","date":"2021-04-02T15:18:08","name":"[v4,07/20] powerpc: Convert to GENERIC_CMDLINE","mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/bcc28f6552708885aecb14a7106b65afbffcc294.1617375802.git.christophe.leroy@csgroup.eu/mbox/"}],"headers":{"Return-Path":"\n <linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org>","X-Original-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":["patchwork-incoming@ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Authentication-Results":["ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:2:0:216:3eff:fee1:b9f1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org;\n receiver=<UNKNOWN>)","lists.ozlabs.org; spf=pass (sender SPF authorized)\n smtp.mailfrom=csgroup.eu (client-ip=93.17.236.30; helo=pegase1.c-s.fr;\n envelope-from=christophe.leroy@csgroup.eu; receiver=<UNKNOWN>)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:2:0:216:3eff:fee1:b9f1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange X25519 server-signature RSA-PSS (4096 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 4F6NYH3Fsvz9sWT\n\tfor <patchwork-incoming@ozlabs.org>; Sat, 27 Mar 2021 00:46:27 +1100 (AEDT)","from boromir.ozlabs.org (localhost [IPv6:::1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4F6NYH2YDBz3cZJ\n\tfor <patchwork-incoming@ozlabs.org>; Sat, 27 Mar 2021 00:46:27 +1100 (AEDT)","from pegase1.c-s.fr (pegase1.c-s.fr [93.17.236.30])\n (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n (No client certificate requested)\n by lists.ozlabs.org (Postfix) with ESMTPS id 4F6NWW23lFz2yss\n for <linuxppc-dev@lists.ozlabs.org>; Sat, 27 Mar 2021 00:44:54 +1100 (AEDT)","from localhost (mailhub1-int [192.168.12.234])\n by localhost (Postfix) with ESMTP id 4F6NWR0RJyz9v039;\n Fri, 26 Mar 2021 14:44:51 +0100 (CET)","from pegase1.c-s.fr ([192.168.12.234])\n by localhost (pegase1.c-s.fr [192.168.12.234]) (amavisd-new, port 10024)\n with ESMTP id 9W4f4_9sN-cN; Fri, 26 Mar 2021 14:44:50 +0100 (CET)","from messagerie.si.c-s.fr (messagerie.si.c-s.fr [192.168.25.192])\n by pegase1.c-s.fr (Postfix) with ESMTP id 4F6NWQ6dmTz9tyyV;\n Fri, 26 Mar 2021 14:44:50 +0100 (CET)","from localhost (localhost [127.0.0.1])\n by messagerie.si.c-s.fr (Postfix) with ESMTP id 578328B8C7;\n Fri, 26 Mar 2021 14:44:51 +0100 (CET)","from messagerie.si.c-s.fr ([127.0.0.1])\n by localhost (messagerie.si.c-s.fr [127.0.0.1]) (amavisd-new, port 10023)\n with ESMTP id 5xMrUPFYBqHf; Fri, 26 Mar 2021 14:44:51 +0100 (CET)","from po16121vm.idsi0.si.c-s.fr (unknown [192.168.4.90])\n by messagerie.si.c-s.fr (Postfix) with ESMTP id DC4E08B8C9;\n Fri, 26 Mar 2021 14:44:50 +0100 (CET)","by po16121vm.idsi0.si.c-s.fr (Postfix, from userid 0)\n id 681D967611; Fri, 26 Mar 2021 13:44:51 +0000 (UTC)"],"X-Virus-Scanned":["Debian amavisd-new at c-s.fr","amavisd-new at c-s.fr"],"Message-Id":"\n <3d5d4281f264ec634f17252b6fef558ca4334243.1616765870.git.christophe.leroy@csgroup.eu>","In-Reply-To":"<cover.1616765869.git.christophe.leroy@csgroup.eu>","References":"<cover.1616765869.git.christophe.leroy@csgroup.eu>","From":"Christophe Leroy <christophe.leroy@csgroup.eu>","Subject":"[PATCH v3 04/17] powerpc: Convert to GENERIC_CMDLINE","To":"will@kernel.org, danielwa@cisco.com, robh@kernel.org,\n daniel@gimpelevich.san-francisco.ca.us","Date":"Fri, 26 Mar 2021 13:44:51 +0000 (UTC)","X-BeenThere":"linuxppc-dev@lists.ozlabs.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.lists.ozlabs.org>","List-Unsubscribe":"<https://lists.ozlabs.org/options/linuxppc-dev>,\n <mailto:linuxppc-dev-request@lists.ozlabs.org?subject=unsubscribe>","List-Archive":"<http://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@lists.ozlabs.org?subject=help>","List-Subscribe":"<https://lists.ozlabs.org/listinfo/linuxppc-dev>,\n <mailto:linuxppc-dev-request@lists.ozlabs.org?subject=subscribe>","Cc":"linux-arch@vger.kernel.org, devicetree@vger.kernel.org,\n microblaze <monstr@monstr.eu>, linux-xtensa@linux-xtensa.org,\n linux-sh@vger.kernel.org, linux-hexagon@vger.kernel.org, x86@kernel.org,\n linux-kernel@vger.kernel.org, nios2 <ley.foon.tan@intel.com>,\n linux-mips@vger.kernel.org, openrisc@lists.librecores.org,\n sparclinux@vger.kernel.org, linux-riscv@lists.infradead.org,\n linuxppc-dev@lists.ozlabs.org, linux-arm-kernel@lists.infradead.org","Errors-To":"linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org","Sender":"\"Linuxppc-dev\"\n <linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org>"},"content":"This updates the powerpc code to use the new cmdline building function.\n\nSigned-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>\n---\n arch/powerpc/Kconfig            | 37 +--------------------------------\n arch/powerpc/kernel/prom_init.c | 17 +++++++--------\n 2 files changed, 8 insertions(+), 46 deletions(-)","diff":"diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig\nindex 386ae12d8523..5181efd7757e 100644\n--- a/arch/powerpc/Kconfig\n+++ b/arch/powerpc/Kconfig\n@@ -167,6 +167,7 @@ config PPC\n \tselect EDAC_SUPPORT\n \tselect GENERIC_ATOMIC64\t\t\tif PPC32\n \tselect GENERIC_CLOCKEVENTS_BROADCAST\tif SMP\n+\tselect GENERIC_CMDLINE\n \tselect GENERIC_CMOS_UPDATE\n \tselect GENERIC_CPU_AUTOPROBE\n \tselect GENERIC_CPU_VULNERABILITIES\tif PPC_BARRIER_NOSPEC\n@@ -886,42 +887,6 @@ config PPC_DENORMALISATION\n \t  Add support for handling denormalisation of single precision\n \t  values.  Useful for bare metal only.  If unsure say Y here.\n \n-config CMDLINE\n-\tstring \"Initial kernel command string\"\n-\tdefault \"\"\n-\thelp\n-\t  On some platforms, there is currently no way for the boot loader to\n-\t  pass arguments to the kernel. For these platforms, you can supply\n-\t  some command-line options at build time by entering them here.  In\n-\t  most cases you will need to specify the root device here.\n-\n-choice\n-\tprompt \"Kernel command line type\" if CMDLINE != \"\"\n-\tdefault CMDLINE_FROM_BOOTLOADER\n-\n-config CMDLINE_FROM_BOOTLOADER\n-\tbool \"Use bootloader kernel arguments if available\"\n-\thelp\n-\t  Uses the command-line options passed by the boot loader. If\n-\t  the boot loader doesn't provide any, the default kernel command\n-\t  string provided in CMDLINE will be used.\n-\n-config CMDLINE_EXTEND\n-\tbool \"Extend bootloader kernel arguments\"\n-\thelp\n-\t  The command-line arguments provided by the boot loader will be\n-\t  appended to the default kernel command string.\n-\n-config CMDLINE_FORCE\n-\tbool \"Always use the default kernel command string\"\n-\thelp\n-\t  Always use the default kernel command string, even if the boot\n-\t  loader passes other arguments to the kernel.\n-\t  This is useful if you cannot or don't want to change the\n-\t  command-line options your boot loader passes to the kernel.\n-\n-endchoice\n-\n config EXTRA_TARGETS\n \tstring \"Additional default image types\"\n \thelp\ndiff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c\nindex ccf77b985c8f..157d508e9fe9 100644\n--- a/arch/powerpc/kernel/prom_init.c\n+++ b/arch/powerpc/kernel/prom_init.c\n@@ -152,7 +152,7 @@ static struct prom_t __prombss prom;\n static unsigned long __prombss prom_entry;\n \n static char __prombss of_stdout_device[256];\n-static char __prombss prom_scratch[256];\n+static char __prombss prom_scratch[COMMAND_LINE_SIZE];\n \n static unsigned long __prombss dt_header_start;\n static unsigned long __prombss dt_struct_start, dt_struct_end;\n@@ -765,22 +765,19 @@ static unsigned long prom_memparse(const char *ptr, const char **retptr)\n  * Early parsing of the command line passed to the kernel, used for\n  * \"mem=x\" and the options that affect the iommu\n  */\n+#define cmdline_strlcat prom_strlcat\n+#include <linux/cmdline.h>\n+\n static void __init early_cmdline_parse(void)\n {\n \tconst char *opt;\n-\n-\tchar *p;\n \tint l = 0;\n \n-\tprom_cmd_line[0] = 0;\n-\tp = prom_cmd_line;\n-\n \tif (!IS_ENABLED(CONFIG_CMDLINE_FORCE) && (long)prom.chosen > 0)\n-\t\tl = prom_getprop(prom.chosen, \"bootargs\", p, COMMAND_LINE_SIZE-1);\n+\t\tl = prom_getprop(prom.chosen, \"bootargs\", prom_scratch,\n+\t\t\t\t COMMAND_LINE_SIZE - 1);\n \n-\tif (IS_ENABLED(CONFIG_CMDLINE_EXTEND) || l <= 0 || p[0] == '\\0')\n-\t\tprom_strlcat(prom_cmd_line, \" \" CONFIG_CMDLINE,\n-\t\t\t     sizeof(prom_cmd_line));\n+\t__cmdline_build(prom_cmd_line, l > 0 ? prom_scratch : NULL, sizeof(prom_scratch));\n \n \tprom_printf(\"command line: %s\\n\", prom_cmd_line);\n \n","prefixes":["v3","04/17"]}