[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6b206e38-2e2e-0236-1b7d-96a537d0038e@ghiti.fr>
Date: Thu, 2 Mar 2023 13:38:45 +0100
From: Alexandre Ghiti <alex@...ti.fr>
To: Alexandre Ghiti <alexghiti@...osinc.com>,
Jonathan Corbet <corbet@....net>,
Richard Henderson <richard.henderson@...aro.org>,
Ivan Kokshaysky <ink@...assic.park.msu.ru>,
Matt Turner <mattst88@...il.com>,
Vineet Gupta <vgupta@...nel.org>,
Russell King <linux@...linux.org.uk>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Huacai Chen <chenhuacai@...nel.org>,
WANG Xuerui <kernel@...0n.name>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
Michal Simek <monstr@...str.eu>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
"James E . J . Bottomley" <James.Bottomley@...senPartnership.com>,
Helge Deller <deller@....de>,
Michael Ellerman <mpe@...erman.id.au>,
Nicholas Piggin <npiggin@...il.com>,
Christophe Leroy <christophe.leroy@...roup.eu>,
Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
Heiko Carstens <hca@...ux.ibm.com>,
Vasily Gorbik <gor@...ux.ibm.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>,
Christian Borntraeger <borntraeger@...ux.ibm.com>,
Sven Schnelle <svens@...ux.ibm.com>,
Yoshinori Sato <ysato@...rs.sourceforge.jp>,
Rich Felker <dalias@...c.org>,
"David S . Miller" <davem@...emloft.net>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
Dave Hansen <dave.hansen@...ux.intel.com>, x86@...nel.org,
"H . Peter Anvin" <hpa@...or.com>, Chris Zankel <chris@...kel.net>,
Max Filippov <jcmvbkbc@...il.com>,
Arnd Bergmann <arnd@...db.de>, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-alpha@...r.kernel.org,
linux-snps-arc@...ts.infradead.org,
linux-arm-kernel@...ts.infradead.org, linux-ia64@...r.kernel.org,
loongarch@...ts.linux.dev, linux-m68k@...ts.linux-m68k.org,
linux-mips@...r.kernel.org, linux-parisc@...r.kernel.org,
linuxppc-dev@...ts.ozlabs.org, linux-riscv@...ts.infradead.org,
linux-s390@...r.kernel.org, linux-sh@...r.kernel.org,
sparclinux@...r.kernel.org, linux-xtensa@...ux-xtensa.org,
linux-arch@...r.kernel.org,
Björn Töpel <bjorn@...nel.org>
Subject: Re: [PATCH v4 00/24] Remove COMMAND_LINE_SIZE from uapi
On 3/2/23 11:06, Alexandre Ghiti wrote:
> Hi Arnd,
>
> On 3/2/23 10:35, Alexandre Ghiti wrote:
>> This all came up in the context of increasing COMMAND_LINE_SIZE in the
>> RISC-V port. In theory that's a UABI break, as COMMAND_LINE_SIZE is the
>> maximum length of /proc/cmdline and userspace could staticly rely on
>> that to be correct.
>>
>> Usually I wouldn't mess around with changing this sort of thing, but
>> PowerPC increased it with a5980d064fe2 ("powerpc: Bump COMMAND_LINE_SIZE
>> to 2048"). There are also a handful of examples of COMMAND_LINE_SIZE
>> increasing, but they're from before the UAPI split so I'm not quite sure
>> what that means: e5a6a1c90948 ("powerpc: derive COMMAND_LINE_SIZE from
>> asm-generic"), 684d2fd48e71 ("[S390] kernel: Append scpdata to kernel
>> boot command line"), 22242681cff5 ("MIPS: Extend COMMAND_LINE_SIZE"),
>> and 2b74b85693c7 ("sh: Derive COMMAND_LINE_SIZE from
>> asm-generic/setup.h.").
>>
>> It seems to me like COMMAND_LINE_SIZE really just shouldn't have been
>> part of the uapi to begin with, and userspace should be able to handle
>> /proc/cmdline of whatever length it turns out to be. I don't see any
>> references to COMMAND_LINE_SIZE anywhere but Linux via a quick Google
>> search, but that's not really enough to consider it unused on my end.
>>
>> This issue was already considered in s390 and they reached the same
>> conclusion in commit 622021cd6c56 ("s390: make command line
>> configurable").
>>
>> The feedback on the v1 seemed to indicate that COMMAND_LINE_SIZE really
>> shouldn't be part of uapi, so this now touches all the ports. I've
>> tried to split this all out and leave it bisectable, but I haven't
>> tested it all that aggressively.
>>
>> Changes since v3
>> <https://lore.kernel.org/all/20230214074925.228106-1-alexghiti@rivosinc.com/>:
>> * Added RB/AB
>> * Added a mention to commit 622021cd6c56 ("s390: make command line
>> configurable") in the cover letter
>>
>> Changes since v2
>> <https://lore.kernel.org/all/20221211061358.28035-1-palmer@rivosinc.com/>:
>> * Fix sh, csky and ia64 builds, as reported by kernel test robot
>>
>> Changes since v1
>> <https://lore.kernel.org/all/20210423025545.313965-1-palmer@dabbelt.com/>:
>> * Touches every arch.
>>
>> base-commit-tag: next-20230207
>>
>> Palmer Dabbelt (24):
>> alpha: Remove COMMAND_LINE_SIZE from uapi
>> arm64: Remove COMMAND_LINE_SIZE from uapi
>> arm: Remove COMMAND_LINE_SIZE from uapi
>> ia64: Remove COMMAND_LINE_SIZE from uapi
>> m68k: Remove COMMAND_LINE_SIZE from uapi
>> microblaze: Remove COMMAND_LINE_SIZE from uapi
>> mips: Remove COMMAND_LINE_SIZE from uapi
>> parisc: Remove COMMAND_LINE_SIZE from uapi
>> powerpc: Remove COMMAND_LINE_SIZE from uapi
>> sparc: Remove COMMAND_LINE_SIZE from uapi
>> xtensa: Remove COMMAND_LINE_SIZE from uapi
>> asm-generic: Remove COMMAND_LINE_SIZE from uapi
>> alpha: Remove empty <uapi/asm/setup.h>
>> arc: Remove empty <uapi/asm/setup.h>
>> m68k: Remove empty <uapi/asm/setup.h>
>> arm64: Remove empty <uapi/asm/setup.h>
>> microblaze: Remove empty <uapi/asm/setup.h>
>> sparc: Remove empty <uapi/asm/setup.h>
>> parisc: Remove empty <uapi/asm/setup.h>
>> x86: Remove empty <uapi/asm/setup.h>
>> xtensa: Remove empty <uapi/asm/setup.h>
>> powerpc: Remove empty <uapi/asm/setup.h>
>> mips: Remove empty <uapi/asm/setup.h>
>> s390: Remove empty <uapi/asm/setup.h>
>>
>> .../admin-guide/kernel-parameters.rst | 2 +-
>> arch/alpha/include/asm/setup.h | 4 +--
>> arch/alpha/include/uapi/asm/setup.h | 7 -----
>> arch/arc/include/asm/setup.h | 1 -
>> arch/arc/include/uapi/asm/setup.h | 6 -----
>> arch/arm/include/asm/setup.h | 1 +
>> arch/arm/include/uapi/asm/setup.h | 2 --
>> arch/arm64/include/asm/setup.h | 3 ++-
>> arch/arm64/include/uapi/asm/setup.h | 27 -------------------
>> arch/ia64/include/asm/setup.h | 10 +++++++
>> arch/ia64/include/uapi/asm/setup.h | 6 ++---
>> arch/loongarch/include/asm/setup.h | 2 +-
>> arch/m68k/include/asm/setup.h | 3 +--
>> arch/m68k/include/uapi/asm/setup.h | 17 ------------
>> arch/microblaze/include/asm/setup.h | 2 +-
>> arch/microblaze/include/uapi/asm/setup.h | 20 --------------
>> arch/mips/include/asm/setup.h | 3 ++-
>> arch/mips/include/uapi/asm/setup.h | 8 ------
>> arch/parisc/include/{uapi => }/asm/setup.h | 0
>> arch/powerpc/include/asm/setup.h | 2 +-
>> arch/powerpc/include/uapi/asm/setup.h | 7 -----
>> arch/s390/include/asm/setup.h | 1 -
>> arch/s390/include/uapi/asm/setup.h | 1 -
>> arch/sh/include/asm/setup.h | 2 +-
>> arch/sparc/include/asm/setup.h | 6 ++++-
>> arch/sparc/include/uapi/asm/setup.h | 16 -----------
>> arch/x86/include/asm/setup.h | 2 --
>> arch/x86/include/uapi/asm/setup.h | 1 -
>> arch/xtensa/include/{uapi => }/asm/setup.h | 0
>> include/asm-generic/Kbuild | 1 +
>> include/{uapi => }/asm-generic/setup.h | 0
>> include/uapi/asm-generic/Kbuild | 1 -
>> 32 files changed, 31 insertions(+), 133 deletions(-)
>> delete mode 100644 arch/alpha/include/uapi/asm/setup.h
>> delete mode 100644 arch/arc/include/uapi/asm/setup.h
>> delete mode 100644 arch/arm64/include/uapi/asm/setup.h
>> create mode 100644 arch/ia64/include/asm/setup.h
>> delete mode 100644 arch/m68k/include/uapi/asm/setup.h
>> delete mode 100644 arch/microblaze/include/uapi/asm/setup.h
>> delete mode 100644 arch/mips/include/uapi/asm/setup.h
>> rename arch/parisc/include/{uapi => }/asm/setup.h (100%)
>> delete mode 100644 arch/powerpc/include/uapi/asm/setup.h
>> delete mode 100644 arch/s390/include/uapi/asm/setup.h
>> delete mode 100644 arch/sparc/include/uapi/asm/setup.h
>> delete mode 100644 arch/x86/include/uapi/asm/setup.h
>> rename arch/xtensa/include/{uapi => }/asm/setup.h (100%)
>> rename include/{uapi => }/asm-generic/setup.h (100%)
>>
> Björn noticed that I should also remove the command line size for
> riscv since it was picked up in 6.3 by Palmer...I send a v6 right now,
> sorry about that.
>
> Alex
>
Hmmm when implementing the riscv patch, I noticed that the patches that
introduce a new include/asm/setup.h file add the following SPDX header:
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
To me we should not add "WITH Linux-syscall-note" as this header is not
part of the user visible headers: any opinion before I send the v5?
Thanks,
Alex
Powered by blists - more mailing lists