Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/1458778/?format=api
{ "id": 1458778, "url": "http://patchwork.ozlabs.org/api/patches/1458778/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/76f43e108bda39dd374928d6d8b86038cc205e74.1616765869.git.christophe.leroy@csgroup.eu/", "project": { "id": 2, "url": "http://patchwork.ozlabs.org/api/projects/2/?format=api", "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": "<76f43e108bda39dd374928d6d8b86038cc205e74.1616765869.git.christophe.leroy@csgroup.eu>", "list_archive_url": "https://lore.kernel.org/linuxppc-dev/76f43e108bda39dd374928d6d8b86038cc205e74.1616765869.git.christophe.leroy@csgroup.eu/", "date": "2021-03-26T13:44:50", "name": "[v3,03/17] cmdline: Gives architectures opportunity to use generically defined boot cmdline manipulation", "commit_ref": null, "pull_url": null, "state": "not-applicable", "archived": false, "hash": "22beed609e44580186cf7a3f80848acaa1abeb1b", "submitter": { "id": 79086, "url": "http://patchwork.ozlabs.org/api/people/79086/?format=api", "name": "Christophe Leroy", "email": "christophe.leroy@csgroup.eu" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/76f43e108bda39dd374928d6d8b86038cc205e74.1616765869.git.christophe.leroy@csgroup.eu/mbox/", "series": [ { "id": 236020, "url": "http://patchwork.ozlabs.org/api/series/236020/?format=api", "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/1458778/comments/", "check": "warning", "checks": "http://patchwork.ozlabs.org/api/patches/1458778/checks/", "tags": {}, "related": [ { "id": 1461759, "url": "http://patchwork.ozlabs.org/api/patches/1461759/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/9cf63d0419bb51d91c5b1c83ce250dff1e7107cc.1617375802.git.christophe.leroy@csgroup.eu/", "msgid": "<9cf63d0419bb51d91c5b1c83ce250dff1e7107cc.1617375802.git.christophe.leroy@csgroup.eu>", "list_archive_url": "https://lore.kernel.org/linuxppc-dev/9cf63d0419bb51d91c5b1c83ce250dff1e7107cc.1617375802.git.christophe.leroy@csgroup.eu/", "date": "2021-04-02T15:18:06", "name": "[v4,05/20] cmdline: Gives architectures opportunity to use generically defined boot cmdline manipulation", "mbox": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/9cf63d0419bb51d91c5b1c83ce250dff1e7107cc.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=112.213.38.117; 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 [112.213.38.117])\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 4F6NXD2pLyz9sVw\n\tfor <patchwork-incoming@ozlabs.org>; Sat, 27 Mar 2021 00:45:32 +1100 (AEDT)", "from boromir.ozlabs.org (localhost [IPv6:::1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4F6NXD22Zbz3c58\n\tfor <patchwork-incoming@ozlabs.org>; Sat, 27 Mar 2021 00:45:32 +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 4F6NWV3qYfz2yss\n for <linuxppc-dev@lists.ozlabs.org>; Sat, 27 Mar 2021 00:44:53 +1100 (AEDT)", "from localhost (mailhub1-int [192.168.12.234])\n by localhost (Postfix) with ESMTP id 4F6NWP3Wqyz9tyyc;\n Fri, 26 Mar 2021 14:44:49 +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 Lp2krAbalVCe; Fri, 26 Mar 2021 14:44:49 +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 4F6NWP2b22z9tyyV;\n Fri, 26 Mar 2021 14:44:49 +0100 (CET)", "from localhost (localhost [127.0.0.1])\n by messagerie.si.c-s.fr (Postfix) with ESMTP id 36CBD8B8C9;\n Fri, 26 Mar 2021 14:44:50 +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 IrDQLeKa7pLW; Fri, 26 Mar 2021 14:44:50 +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 D731D8B8C7;\n Fri, 26 Mar 2021 14:44:49 +0100 (CET)", "by po16121vm.idsi0.si.c-s.fr (Postfix, from userid 0)\n id 61C2067611; Fri, 26 Mar 2021 13:44:50 +0000 (UTC)" ], "X-Virus-Scanned": [ "Debian amavisd-new at c-s.fr", "amavisd-new at c-s.fr" ], "Message-Id": "\n <76f43e108bda39dd374928d6d8b86038cc205e74.1616765869.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 03/17] cmdline: Gives architectures opportunity to use\n generically defined boot cmdline manipulation", "To": "will@kernel.org, danielwa@cisco.com, robh@kernel.org,\n daniel@gimpelevich.san-francisco.ca.us", "Date": "Fri, 26 Mar 2021 13:44:50 +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": "Most architectures have similar boot command line manipulation\noptions. This patchs adds the definition in init/Kconfig, gated by\nCONFIG_HAVE_CMDLINE that the architectures can select to use them.\n\nCONFIG_CMDLINE_EXTEND is understood differently by architectures.\nFor some of them it appends built-in CMDLINE to bootloader provided\nline. For others it appends the bootloader provided CMDLINE to the\nbuilt-in one.\nTo avoid confusion, this commit brings to different options:\n- CONFIG_CMDLINE_APPEND to append the built-in CMDLINE to the\nbootloader line.\n- CONFIG_CMDLINE_PREPEND to prepend the built-in CMDLINE in front of\nthe bootloader line.\n\nFor compatibility with existing architecture which uses CONFIG_OF, as\nOF has already been converted to generic cmdline, we keep\nCONFIG_CMDLINE_EXTEND as a synonym to CONFIG_CMDLINE_APPEND until\narm, powerpc, riscv and sh architectures have been converted.\n\nA few differences are identified and will have to be taken\ninto account when converting the architecture to generic cmdline:\n- riscv has CMDLINE_FALLBACK instead of CMDLINE_FROM_BOOTLOADER\n- Some architectures are using CONFIG_CMDLINE_OVERRIDE or\nCONFIG_CMDLINE_OVERWRITE instead of CONFIG_CMDLINE_FORCE.\n\nSigned-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>\n---\nv3:\n- Comments from Will.\n- Remove CONFIG_CMDLINE_BOOL. Using CONFIG_CMDLINE != \"\" instead, like arm and powerpc.\n- Changed EXTEND to APPEND. Keep EXTEND for backward compatibility.\n---\n include/linux/cmdline.h | 2 +-\n init/Kconfig | 52 +++++++++++++++++++++++++++++++++++++++++\n 2 files changed, 53 insertions(+), 1 deletion(-)", "diff": "diff --git a/include/linux/cmdline.h b/include/linux/cmdline.h\nindex dea87edd41be..38306c109041 100644\n--- a/include/linux/cmdline.h\n+++ b/include/linux/cmdline.h\n@@ -36,7 +36,7 @@ static __always_inline void __cmdline_build(char *dst, const char *src, size_t l\n \n \tcmdline_strlcat(dst, src, len);\n \n-\tif (IS_ENABLED(CONFIG_CMDLINE_EXTEND))\n+\tif (IS_ENABLED(CONFIG_CMDLINE_EXTEND) || IS_ENABLED(CONFIG_CMDLINE_APPEND))\n \t\tcmdline_strlcat(dst, \" \" CONFIG_CMDLINE, len);\n }\n \ndiff --git a/init/Kconfig b/init/Kconfig\nindex 5f5c776ef192..af0d84662cc2 100644\n--- a/init/Kconfig\n+++ b/init/Kconfig\n@@ -117,6 +117,58 @@ config INIT_ENV_ARG_LIMIT\n \t Maximum of each of the number of arguments and environment\n \t variables passed to init from the kernel command line.\n \n+config GENERIC_CMDLINE\n+\tbool\n+\n+config CMDLINE\n+\tstring \"Default kernel command string\" if GENERIC_CMDLINE\n+\tdefault \"\"\n+\thelp\n+\t Defines a default kernel command string.\n+\t If this string is not empty, additional choices are proposed\n+\t below to determine how it will be used by the kernel.\n+\n+choice\n+\tprompt \"Kernel command line type\" if CMDLINE != \"\"\n+\tdefault CMDLINE_PREPEND if ARCH_WANT_CMDLINE_PREPEND_BY_DEFAULT\n+\tdefault CMDLINE_FROM_BOOTLOADER\n+\tdepends on GENERIC_CMDLINE\n+\thelp\n+\t Determine how the default kernel arguments are combined with any\n+\t arguments passed by the bootloader if any.\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_APPEND\n+\tbool \"Append to the bootloader kernel arguments\"\n+\thelp\n+\t The default kernel command string will be appended to the\n+\t command-line arguments provided by the bootloader.\n+\n+config CMDLINE_PREPEND\n+\tbool \"Prepend to the bootloader kernel arguments\"\n+\thelp\n+\t The default kernel command string will be prepended to the\n+\t command-line arguments provided by the bootloader.\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, ignoring any\n+\t arguments provided by the bootloader.\n+endchoice\n+\n+config CMDLINE_EXTEND\n+\tbool\n+\tdefault CMDLINE_APPEND\n+\thelp\n+\t To be removed once all architectures are converted to generic CMDLINE\n+\n config COMPILE_TEST\n \tbool \"Compile also drivers which will not load\"\n \tdepends on HAS_IOMEM\n", "prefixes": [ "v3", "03/17" ] }