From patchwork Thu Mar 2 09:35:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexandre Ghiti X-Patchwork-Id: 13156899 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9D86FC678D4 for ; Thu, 2 Mar 2023 09:35:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=oPQsZTH5eoBe4TmeeWKNbvHiatdTmVrxV1qSKwZJqto=; b=qZM/p4rwDLcLYH p+iVLqcFQuNDOzfNI6pcO1q4hLCico0SWKYd+W6U7+3DoDlVf1T3f6R7R7QQLTT46brTXYkFzmkeq IbdmvsFtY8CeV42KC9fEMr3k3CC5NpiW4ohwRMkyD8QOU9jZTqhpvlkMVWwWi7sYU+Y/IquqsXox8 N/Ka4kBv5ogp5LJio2x9/PQGieJ88/HjhGxKRRiUQtMXcios62dfmlRcrHw2EbTQ5TJ8egLtxcAO5 ckCok42/aWhaAvTvSPRnYqGGLrdCisPrGYe/b2iNSeZDPtiOmCozIiqg7AEFBox9sSE6IrMiVutST YXfRVo63VNPNFgh/YBMQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pXfLo-001R0I-G2; Thu, 02 Mar 2023 09:35:48 +0000 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pXfLk-001Qxt-Pb for linux-riscv@lists.infradead.org; Thu, 02 Mar 2023 09:35:47 +0000 Received: by mail-wm1-x334.google.com with SMTP id p23-20020a05600c1d9700b003ead4835046so1823096wms.0 for ; Thu, 02 Mar 2023 01:35:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20210112.gappssmtp.com; s=20210112; t=1677749742; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=0+QyJbOcIEmK/h00N9XPuc9p7Y446r7FCIJpaEpb2y0=; b=GSZPDYNuLgx/8mLBXcWrYDn7canNDaRtfx/thmlw+ZEBHPI0HYu1zL9LQFCizwcrca TsKITKLC0vDpyHBESTzecaxvZI4+8ls2wjItm2Pt/uxbbqQ0iKB0xHThPFn5cHy8g/mJ y9OD1hXrn5nc4Q2EZaQPwPA3ne0cIzPME9LqnyO6K/L7WEPGkJVeZOAkCNfuTzDGKLV3 /5/Ofu4+aOhWWfFMVIN2YY9VqSSWA+OsdGSkgKWVxcBzI+N21V9PPC5mATDOgJC7aibv nuJNa9uPLqwVsGG4Y11KwSu5HX6ff6be1CREj0CQTZPl1a4u3/kbBq6+Gy5wWVRsPZ7x 9i+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677749742; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=0+QyJbOcIEmK/h00N9XPuc9p7Y446r7FCIJpaEpb2y0=; b=CSU82vh1TepG4ASpfhi1YbpVtG/F9z8rkwGEvGomoiZRHPAvYnFo2+vpUrAhi7tj1L vO24/XiWRLunnAyTCDOcbEK1taRyoB0epe+xgD/zioT1hlZdX7NZT19cJProOJ/AzhaZ Lg9LIhoasS3KvGBG+MieBUtoEZX0mhDirTBNibaIGJV4cAvIAuOhyd89wJO7oPyZJkAf 1APewebjASPrf627V3jH9+/kicCQZR2dzcwT3xNCevbGp/xMVoXLm7d5EQrV56d4C/k+ VLIWRxktZ1qrJdMd7qe/7JMbdotmzMiIWSQBpqfZpg+uwr+7GWh5MOBmoXg0ygzVaL07 qQxQ== X-Gm-Message-State: AO0yUKUJK8STeCyfRjkvBv+3Z5Zjzt3CCeKm0YIQy1GpxYT+l3NqR4V0 hXrRmo0Ql8fKo7ihy+Snem7fIw== X-Google-Smtp-Source: AK7set82JqkGhDygh6pR2mSF0/c3yM6dikmWvSRMvxrqnIL2EUb/yJbhzMLscJ56hDRKKxkME8A6dw== X-Received: by 2002:a05:600c:1708:b0:3d0:6a57:66a5 with SMTP id c8-20020a05600c170800b003d06a5766a5mr7384393wmn.0.1677749742062; Thu, 02 Mar 2023 01:35:42 -0800 (PST) Received: from alex-rivos.home (amontpellier-656-1-456-62.w92-145.abo.wanadoo.fr. [92.145.124.62]) by smtp.gmail.com with ESMTPSA id l10-20020a7bc44a000000b003e21dcccf9fsm2223136wmi.16.2023.03.02.01.35.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Mar 2023 01:35:41 -0800 (PST) From: Alexandre Ghiti To: Jonathan Corbet , Richard Henderson , Ivan Kokshaysky , Matt Turner , Vineet Gupta , Russell King , Catalin Marinas , Will Deacon , Huacai Chen , WANG Xuerui , Geert Uytterhoeven , Michal Simek , Thomas Bogendoerfer , "James E . J . Bottomley" , Helge Deller , Michael Ellerman , Nicholas Piggin , Christophe Leroy , Paul Walmsley , Palmer Dabbelt , Albert Ou , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Yoshinori Sato , Rich Felker , "David S . Miller" , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H . Peter Anvin" , Chris Zankel , Max Filippov , Arnd Bergmann , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-alpha@vger.kernel.org, linux-snps-arc@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-ia64@vger.kernel.org, loongarch@lists.linux.dev, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, linux-xtensa@linux-xtensa.org, linux-arch@vger.kernel.org Cc: Alexandre Ghiti Subject: [PATCH v4 00/24] Remove COMMAND_LINE_SIZE from uapi Date: Thu, 2 Mar 2023 10:35:15 +0100 Message-Id: <20230302093539.372962-1-alexghiti@rivosinc.com> X-Mailer: git-send-email 2.37.2 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230302_013545_059572_937B510B X-CRM114-Status: GOOD ( 19.40 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org 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 : * Added RB/AB * Added a mention to commit 622021cd6c56 ("s390: make command line configurable") in the cover letter Changes since v2 : * Fix sh, csky and ia64 builds, as reported by kernel test robot Changes since v1 : * 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 arc: Remove empty m68k: Remove empty arm64: Remove empty microblaze: Remove empty sparc: Remove empty parisc: Remove empty x86: Remove empty xtensa: Remove empty powerpc: Remove empty mips: Remove empty s390: Remove empty .../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%)