From nobody Mon Jun 8 07:27:29 2026 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 42993233934 for ; Sun, 31 May 2026 23:17:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269481; cv=none; b=GZUxSPi2wNfCwmk+x4X0gsj2lFSsRTlQCshvVE6j5w4TLVwsQuFzehUrA4imb0+sugLIReWALZ64Ax4nhL/3Z337Y4JTK9HPBoP7razkhPuE5lL0JC3Y2+MCsdVRUA3gTJAMfVxFNWYBAgWIaUuXwlT+cj8TgzyTmMhQ+g+DYIw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269481; c=relaxed/simple; bh=5TSr29LSwGDXLwLvDWzxI5WHv1bELD/GcXyz7uzulhE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=SkqzPss5pz3skgFo8s2hvmqPrKv/YB2GCujk0OfYCMet4jbKWFMHbkcg2nYOUs+bQBXWAZzJOvQjaMAsCgvAh3z8Yy354I8OZNj8ca5/TqzSezTIUuOezI2C/Xo0yPMiiPJeFkFzWSLqYYFJGwsWngmR/hoH+O6PQaLN6a95kbU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk; spf=pass smtp.mailfrom=thegoodpenguin.co.uk; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b=thCNVISj; arc=none smtp.client-ip=209.85.128.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b="thCNVISj" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-4905529b933so71530435e9.0 for ; Sun, 31 May 2026 16:17:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thegoodpenguin-co-uk.20251104.gappssmtp.com; s=20251104; t=1780269475; x=1780874275; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=BlnkV007FI48mXpf+dStqCmocIvL2i8BzMwzQ0j9H8A=; b=thCNVISjU0z/5ZoysjeX8phC46qjOQvqXI6q5l0AcDnhLrIABMIZQ6mpTnWlC5DQyd EmBd22yLx6hoYlpCCf788fU2IdyK/GzDwc+GBtIxC96+64IFuWa3jt20FF8lGFegUdqu Ds2JOTknzLbGrkD1RYWKpSiKnUZSfL8bLZdSBsIZ11+b1zzV2ztKKUs7uFclyeM5T8t6 OIhto+9yg5Ke+/9jIcf3A2n0iySWjXpO2xv8FYrHOEobzTcuX1dReJTRAKzlTvAKfb82 rrQ8Sg6m78mwIKMiYLcjpCuJgBxqHltYIIP3sIOcQzQqRB1b+G+xGh1bAmVcNldc1T0z GSuQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780269475; x=1780874275; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=BlnkV007FI48mXpf+dStqCmocIvL2i8BzMwzQ0j9H8A=; b=jOQhfefvq8xT1KxzP6r95CY4rZk9is2DpYZJZp/EfP8WLYdvbaP+eGEmkSjoNYStmZ lUHBa4Odhjo3tKDQYHLFlTzvf1T+Cq+7KPQZW8tKNCZLmMAm5dBB25CnDjZ/A0njdaEz xMSii0X3cj+UY8E9KihXQZarkzdyU/tBt94Ttlha9NvXfKqtlB+6h0XflnU4u+Ie+g5A uyL7jE/bHHa66L0n7fKnO3aCstiOb7u6EJD2qffKNno1/pb1EVEMjcRH8RXhnwiO1ypU rQyHoEo3+N+MrUuHhWbHhXeqI5XYzKyFM2+kye9APZX9Sv9sn2+WqsZ4vF0lZNPuTgoc 5xmQ== X-Forwarded-Encrypted: i=1; AFNElJ//6/DgeyS2WTYwWzbr7djSMb4RUwNcgvLDYR21l8lqTn9iif1cYAv3y5Xs5ISEIQ3DQsrDYGSW63gsVA4=@vger.kernel.org X-Gm-Message-State: AOJu0YzWvMEwFy1e7xPa6bjMgUVlrGRHdkqvsFUecmqz9tT2UU489/Mt loYyDxOos0asP7Y1I6/x1FOsopYe1uxQIRtSOK7Zqa0A0Y1nJHtpqxEzJDUjni+ue+I= X-Gm-Gg: Acq92OGinHW5SqcxgZmabkKzi6GPavutfxiR7T85yZYxgo+LLLRLdYMCe+GyFUZCeA/ HrCzzepVc9gOo+P0b5Brbbi3+8w8qLrYKt/lwH5ZdT8GTd5htd04i1nfZ6lRyEtxp87o2hUrjzR OozHTAesDkiOAl0aCEyo32JFrve8AolgXIuA6HGThbyfA4CSES1l5UquagJHY2j1PGzhof5tiU3 ec90smaN+pQu2GhumC4ii+c484rzhtD/K+VNfsmLLq8Uaq8s/Z9REWIyfV/K1N57fBK/7LsS8ck +kPrCQgxfl2sGK8QbxNcMD4WXES24rtl1oxHwtdLfqF7q+fnSF8peq8hlhy3tkO7B5QnBEJxe8P H4eL2Tdfk4Tsuz7aRO8NDPB3U7gEQdUhl0352R03n7a5fmGcdD5ImPVRUbkcYfroa8Aa+ZJQm09 ezyvz0t8TiqQXyXmUzejriLhxpTCI26jy2u+xGmMxBkS+qKA9UZmAFBhHqAh5U6zmp9vzAVT8vy ce+DCU1ziiSfRqht6MWQIS7VKYab8p5w0PBF03Me/qMcbpPTQ== X-Received: by 2002:a5d:534c:0:b0:45e:73a5:e1ed with SMTP id ffacd0b85a97d-45ef6b5b858mr11489190f8f.27.1780269475497; Sun, 31 May 2026 16:17:55 -0700 (PDT) Received: from [127.0.1.1] ([2a00:23c5:7815:1301:f27:e3a8:2334:314d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-45ef34b834esm20496544f8f.11.2026.05.31.16.17.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 31 May 2026 16:17:53 -0700 (PDT) From: Andrew Murray Date: Mon, 01 Jun 2026 00:17:37 +0100 Subject: [PATCH RFC 1/4] printk: remove BOOT_PRINTK_DELAY config option Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260601-deprecate_boot_delay-v1-1-c34c187142a6@thegoodpenguin.co.uk> References: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> In-Reply-To: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> To: Jonathan Corbet , Shuah Khan , Russell King , Florian Fainelli , Broadcom internal kernel review list , Ray Jui , Scott Branden , Petr Mladek , Steven Rostedt , John Ogness , Sergey Senozhatsky , Andrew Morton , Sebastian Andrzej Siewior , Clark Williams , Randy Dunlap , Linus Torvalds Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rpi-kernel@lists.infradead.org, linux-rt-devel@lists.linux.dev, Andrew Murray X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1780269471; l=3823; i=amurray@thegoodpenguin.co.uk; s=20250914; h=from:subject:message-id; bh=5TSr29LSwGDXLwLvDWzxI5WHv1bELD/GcXyz7uzulhE=; b=RpHQjnwPlCMM2VtepAdORdFkPWqzLeIfyeSmjtS5aPXoHK3GX0Pi3LUQVR56kW6L6eodrkBg2 zCSx9+ttsm9BHv7/kQjLkxfOiOnRPICyMwRxfmblDJUyamhDHIP9DWi X-Developer-Key: i=amurray@thegoodpenguin.co.uk; a=ed25519; pk=0SU0Q8S/uEiCdbXbXS+PvJGUCaBG1nDszD+HPU3Js0Q= The boot_delay (BOOT_PRINTK_DELAY) kernel parameter and printk_delay sysctl are two distinct mechanisms for providing similar functionality which add a delay prior to each printed printk message. In preparation of combining them into a single configurable feature, let's first remove the kconfig option BOOT_PRINTK_DELAY. Signed-off-by: Andrew Murray --- Documentation/admin-guide/kernel-parameters.txt | 2 +- arch/arm/configs/bcm2835_defconfig | 1 - kernel/printk/printk.c | 2 +- lib/Kconfig.debug | 18 ------------------ 4 files changed, 2 insertions(+), 21 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentatio= n/admin-guide/kernel-parameters.txt index 97007f4f69d4e8f19acaff81c9af8421a09822bf..37b618d176f1c499f457f0d8b56= 79c29ee7ab177 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -656,7 +656,7 @@ Kernel parameters =20 boot_delay=3D [KNL,EARLY] Milliseconds to delay each printk during boot. - Only works if CONFIG_BOOT_PRINTK_DELAY is enabled, + Only works if GENERIC_CALIBRATE_DELAY is enabled, and you may also have to specify "lpj=3D". Boot_delay values larger than 10 seconds (10000) are assumed erroneous and ignored. diff --git a/arch/arm/configs/bcm2835_defconfig b/arch/arm/configs/bcm2835_= defconfig index 4a8ac09843d73280cc42dbbf63fe3cc9f31dacd2..51a1e94d5aa6c22202778082b87= 7a202a6b9c04d 100644 --- a/arch/arm/configs/bcm2835_defconfig +++ b/arch/arm/configs/bcm2835_defconfig @@ -174,7 +174,6 @@ CONFIG_NLS_UTF8=3Dy CONFIG_DMA_CMA=3Dy CONFIG_CMA_SIZE_MBYTES=3D32 CONFIG_PRINTK_TIME=3Dy -CONFIG_BOOT_PRINTK_DELAY=3Dy CONFIG_DYNAMIC_DEBUG=3Dy CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=3Dy # CONFIG_ENABLE_MUST_CHECK is not set diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c index 0323149548f6a4dbcdd80029478b809d44de9b62..822fcdff7b21ac00cfa655c3d9b= 4de2698fcb7d8 100644 --- a/kernel/printk/printk.c +++ b/kernel/printk/printk.c @@ -1289,7 +1289,7 @@ static bool suppress_message_printing(int level) return (level >=3D console_loglevel && !ignore_loglevel); } =20 -#ifdef CONFIG_BOOT_PRINTK_DELAY +#ifdef CONFIG_GENERIC_CALIBRATE_DELAY =20 static int boot_delay; /* msecs delay after each printk during bootup */ static unsigned long long loops_per_msec; /* based on boot_delay */ diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 8ff5adcfe1e0a2f13893c92c3b95498fedb83855..fa82d76e7de45e05e5c0d578eaa= 2e5807bca39d1 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -99,24 +99,6 @@ config MESSAGE_LOGLEVEL_DEFAULT by default. To change that, use loglevel=3D in the kernel bootargs, or pick a different CONSOLE_LOGLEVEL_DEFAULT configuration value. =20 -config BOOT_PRINTK_DELAY - bool "Delay each boot printk message by N milliseconds" - depends on DEBUG_KERNEL && PRINTK && GENERIC_CALIBRATE_DELAY - help - This build option allows you to read kernel boot messages - by inserting a short delay after each one. The delay is - specified in milliseconds on the kernel command line, - using "boot_delay=3DN". - - It is likely that you would also need to use "lpj=3DM" to preset - the "loops per jiffy" value. - See a previous boot log for the "lpj" value to use for your - system, and then set "lpj=3DM" before setting "boot_delay=3DN". - NOTE: Using this option may adversely affect SMP systems. - I.e., processors other than the first one may not boot up. - BOOT_PRINTK_DELAY also may cause LOCKUP_DETECTOR to detect - what it believes to be lockup conditions. - config DYNAMIC_DEBUG bool "Enable dynamic printk() support" default n --=20 2.34.1 From nobody Mon Jun 8 07:27:29 2026 Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9620A371043 for ; Sun, 31 May 2026 23:17:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269483; cv=none; b=igu5VJ3HjkoehiS/6/bXlspxENDgCxHiFcT0rdDkSaV2t7aLAO66GIg+iC25edkUnosZMj1PoVylg7IA6dA7DZyEZsopYWXM7SUR63TSaaahoL27/T26GJIoJZeMG1yBf8cgVmQIQBGvq5VvFJg4NwFV6krKOFzwQfhZk2qj6c0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269483; c=relaxed/simple; bh=NzyYbeRmipVDUcVFnXEzhSA5L8Fjv+M/rg5sEJLce8g=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DFS9W4/sS8VgtSfvR8L5Eq9bQ7ckMUTzB1HoPgcEVkpzXY3M2HplKaj06uFv0Bv1D3hllk22fPJdYLCdmRKJlNyR6ZC4X6QQfhdfzkJHq3647MA1SDogS/KO0xlVzWwR5yn3DNbHV2Rf4P4kF1nYO1BPyCPhlH3Z4ZLGKtJf/dM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk; spf=pass smtp.mailfrom=thegoodpenguin.co.uk; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b=D4BBV8uM; arc=none smtp.client-ip=209.85.221.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b="D4BBV8uM" Received: by mail-wr1-f47.google.com with SMTP id ffacd0b85a97d-45efa80e0afso929988f8f.2 for ; Sun, 31 May 2026 16:17:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thegoodpenguin-co-uk.20251104.gappssmtp.com; s=20251104; t=1780269477; x=1780874277; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Yw1fhfSYYqzCwDV1bdu9APNnKhaP1vTsxLW0x4AdDkE=; b=D4BBV8uMc4b3pVACkDqxyvtmxKDnEpuWc2//GSZkcpvWFiWSMBEgIwDvxVZTX+odsg gkcvVOSGshOlpnqMm2ocfdKBkAUgpk/F6Ac7xEXJylgFkTPDZCsfNZBrDhMYEZ3cIXyF EA8dMFllT3I1tr+O76ZTZZF1C2sPNqufmT/aQFtIDdzCDpHYQRk5J5glOPaMen+58+B9 5ww4YxMzbVmWKHd07qFNR/HZTJjbgUa7tLfnCkJze6ipKDlHlkQtoZ1obygOGcSKL2B4 HqLGsAkJTEl7nKgulT7A+Q288xN2PiLeZkcLCx3TyM9U4gACzE8bi/4ik48vayc5DHD1 GbRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780269477; x=1780874277; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=Yw1fhfSYYqzCwDV1bdu9APNnKhaP1vTsxLW0x4AdDkE=; b=BpUOEsUuotvrvy2loM+fbkZV/oU5ET6r40YFpEzeQ1uudbG7aDYslsywVbh+Vwoiqr CYApGu0x2a6eVjE+cbHxPgAK7ylsn+w+RKKHPBm+wGjlsml0CCdlOJs0S9m0jjE/RwCk maFBn/TZOWB7k26MdlxH0KrZxSDcenggPo870X8EE3h7Af3mM2r8FUurG7+i8zrOUJ5T gTttEDPirKyQbAXYE1xB5EZyrrVGTFd6zo3pZ88GmZrSV/iTOBvd9yrN825AIdfSSbCH KGJawLg5rRpvQDn0HMZ9uFg158ZrlG+D2SRYVQ+fAul7grR5HgD6QBnpcA3z3lk2W3SZ peIg== X-Forwarded-Encrypted: i=1; AFNElJ/Qb2mqAgNcpZ2sicTkw5HD4Yxa2hMhcaH8O3c2J7JMocKti/InKWRGjX35MMHW1s1cLuoQdHlRiLzI7FY=@vger.kernel.org X-Gm-Message-State: AOJu0Yyj8/Pd/ZoiflfqTIe64+aavgMKvWAImQEjbENO2mzfb5iBMg4Y 9IJqjdj1pegJagcf+ubC1sABsWS9uAmdzSKjlPL1obLUMwlma82rCL+4plzBOMOAcs0= X-Gm-Gg: Acq92OG6TJMZejwOx0ZBpk6bITTInmRqZwz/kuRDdpKSavEowWQD1gX9KJRoCVLZkbI /ZN/8ObOvsoDVbs5jcWGIzHeVM+6KgWeH/Eudp+jmiOX94jpGuHDQlrka6jLZ0Zpfy94wVEvD2o HAMZ0GHcIWPbXAEPcLHrRMi2xuJ1nJsSAVomigcPLL4dDXdDxrCx5hEls8B8/uPBme8FknWlAax OIKouRViT+frRBmzsZubfjOoxgLrN5svjImdmZhpv8crXualpaWxwi4Lz1jnU+zFA90K/r314zq 1adU9dMjU9O7avWRf2qCtbCIfiWMqYxis1UV5mtCieFWIlspckMb9O5tV/zuYiYAvdA8bz9Pbdt jwHUhiYkCQ+f6/zqTbnLrHrD6Ovy8CzOAG7kK6lIvoWo2GIPpG7L3q2LtV9lKSGlZ+mu3I3J98F ZS9To8BqJkq5UtVAEKmbwdtQ36wSBlq6PFJDZPM69qfbbR+7ybgCc9NTAeeLdN2CpR6h4j7pN+g SzM6x3/lg2lCj4DRe4Tl6M3F38LoPCcq12d3FkAsyBrQOg/2g== X-Received: by 2002:a05:600c:6558:b0:48f:d5a0:284e with SMTP id 5b1f17b1804b1-490a294b864mr118910765e9.28.1780269476864; Sun, 31 May 2026 16:17:56 -0700 (PDT) Received: from [127.0.1.1] ([2a00:23c5:7815:1301:f27:e3a8:2334:314d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-45ef34b834esm20496544f8f.11.2026.05.31.16.17.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 31 May 2026 16:17:56 -0700 (PDT) From: Andrew Murray Date: Mon, 01 Jun 2026 00:17:38 +0100 Subject: [PATCH RFC 2/4] printk: deprecate boot_delay in favour of printk_delay Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260601-deprecate_boot_delay-v1-2-c34c187142a6@thegoodpenguin.co.uk> References: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> In-Reply-To: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> To: Jonathan Corbet , Shuah Khan , Russell King , Florian Fainelli , Broadcom internal kernel review list , Ray Jui , Scott Branden , Petr Mladek , Steven Rostedt , John Ogness , Sergey Senozhatsky , Andrew Morton , Sebastian Andrzej Siewior , Clark Williams , Randy Dunlap , Linus Torvalds Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rpi-kernel@lists.infradead.org, linux-rt-devel@lists.linux.dev, Andrew Murray X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1780269471; l=4252; i=amurray@thegoodpenguin.co.uk; s=20250914; h=from:subject:message-id; bh=NzyYbeRmipVDUcVFnXEzhSA5L8Fjv+M/rg5sEJLce8g=; b=i+GDn9CndzdObBjnvYG9EQGVKMlZ7e6Fy6BNLVupTvtxPnVqFEb/bVi2JyX2zv2+YUvaYE0j4 OueQHamNr33BR1S1U4QUwBadcLGdUbhjHwzvBhiP9fMeOsqdMoVpSvg X-Developer-Key: i=amurray@thegoodpenguin.co.uk; a=ed25519; pk=0SU0Q8S/uEiCdbXbXS+PvJGUCaBG1nDszD+HPU3Js0Q= The boot_delay (BOOT_PRINTK_DELAY) kernel parameter and printk_delay sysctl are two distinct mechanisms for providing similar functionality which add a delay prior to each printed printk message. boot_delay provides a kernel parameter for delaying printk output from kernel start through to boot (SYSTEM_RUNNING), whereas printk_delay is configurable only via sysctl and thus is only used post boot. Let's deprecate the boot_delay feature in favour of printk_delay. In order to preserve functionality, we'll also extend printk_delay such that it can additionally configured via a kernel parameter. Signed-off-by: Andrew Murray --- kernel/printk/printk.c | 75 ++++++++++++++++++++++++++++++++--------------= ---- 1 file changed, 48 insertions(+), 27 deletions(-) diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c index 822fcdff7b21ac00cfa655c3d9b4de2698fcb7d8..ca510b9c76458f5c1e059200060= d9d6be4c859b3 100644 --- a/kernel/printk/printk.c +++ b/kernel/printk/printk.c @@ -1291,40 +1291,28 @@ static bool suppress_message_printing(int level) =20 #ifdef CONFIG_GENERIC_CALIBRATE_DELAY =20 -static int boot_delay; /* msecs delay after each printk during bootup */ static unsigned long long loops_per_msec; /* based on boot_delay */ =20 -static int __init boot_delay_setup(char *str) +static void __init printk_delay_calculate(void) { unsigned long lpj; =20 lpj =3D preset_lpj ? preset_lpj : 1000000; /* some guess */ loops_per_msec =3D (unsigned long long)lpj / 1000 * HZ; =20 - get_option(&str, &boot_delay); - if (boot_delay > 10 * 1000) - boot_delay =3D 0; - - pr_debug("boot_delay: %u, preset_lpj: %ld, lpj: %lu, " + pr_debug("printk_delay: %u, preset_lpj: %ld, lpj: %lu, " "HZ: %d, loops_per_msec: %llu\n", - boot_delay, preset_lpj, lpj, HZ, loops_per_msec); - return 0; + printk_delay_msec, preset_lpj, lpj, HZ, loops_per_msec); } -early_param("boot_delay", boot_delay_setup); =20 -static void boot_delay_msec(int level) +static void early_boot_delay_msec(void) { unsigned long long k; unsigned long timeout; - bool suppress =3D !is_printk_force_console() && - suppress_message_printing(level); - - if ((boot_delay =3D=3D 0 || system_state >=3D SYSTEM_RUNNING) || suppress) - return; =20 - k =3D (unsigned long long)loops_per_msec * boot_delay; + k =3D (unsigned long long)loops_per_msec * printk_delay_msec; =20 - timeout =3D jiffies + msecs_to_jiffies(boot_delay); + timeout =3D jiffies + msecs_to_jiffies(printk_delay_msec); while (k) { k--; cpu_relax(); @@ -1339,11 +1327,34 @@ static void boot_delay_msec(int level) } } #else -static inline void boot_delay_msec(int level) +static inline void __init printk_delay_calculate(void) +{ +} + +static inline void early_boot_delay_msec(void) { } #endif =20 +static int __init printk_delay_setup(char *str) +{ + get_option(&str, &printk_delay_msec); + if (printk_delay_msec > 10 * 1000) + printk_delay_msec =3D 0; + + printk_delay_calculate(); + + return 0; +} +early_param("printk_delay", printk_delay_setup); + +static int __init boot_delay_setup(char *str) +{ + pr_warn("boot_delay will soon be deprecated, please use printk_delay inst= ead"); + return printk_delay_setup(str); +} +early_param("boot_delay", boot_delay_setup); + static bool printk_time =3D IS_ENABLED(CONFIG_PRINTK_TIME); module_param_named(time, printk_time, bool, S_IRUGO | S_IWUSR); =20 @@ -2119,18 +2130,28 @@ static u8 *__printk_recursion_counter(void) =20 int printk_delay_msec __read_mostly; =20 +static inline void late_boot_delay_msec(void) +{ + int m =3D printk_delay_msec; + + while (m--) { + mdelay(1); + touch_nmi_watchdog(); + } +} + static inline void printk_delay(int level) { - boot_delay_msec(level); + bool suppress =3D !is_printk_force_console() && + suppress_message_printing(level); =20 - if (unlikely(printk_delay_msec)) { - int m =3D printk_delay_msec; + if (likely(!printk_delay_msec) || suppress) + return; =20 - while (m--) { - mdelay(1); - touch_nmi_watchdog(); - } - } + if (system_state < SYSTEM_RUNNING) + early_boot_delay_msec(); + else + late_boot_delay_msec(); } =20 #define CALLER_ID_MASK 0x80000000 --=20 2.34.1 From nobody Mon Jun 8 07:27:29 2026 Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A892935837E for ; Sun, 31 May 2026 23:18:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269484; cv=none; b=hOSymRgY0Vnw+z56JQlJNfWeLc0n7NyyyyH2lJ/5aisCKWoV8L8Ter70jXa6sa4M1mO30CCPqxrP9d5LYfd14YHE01idyV186klmgV2olLKobzZoA4mA9QWvaY+3Bn4QVJY3keYFvtgREx4JmXFLL6DBqNfHO/al3C0XoA8f8Kg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269484; c=relaxed/simple; bh=iIdrzIpbtLvWz4MDbsc58aNL3F6fTnbJs47tQmnDnOs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=A1X6DmKV+KoBLgZMIPOD9O0V3Q2DiL1SgK3UJIjIElH70EDOnJvxRls4s5mTLb1A+RpMhgEVHEFnV1zVbvMyrUO+9xMopYfs4plqJRBtnP+60Zv8RXDgIkDmHL/gHAUU1obpiSkZdluVcP/EwTCdrdKrlyXNBYbcAemYtOFEfV0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk; spf=pass smtp.mailfrom=thegoodpenguin.co.uk; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b=PEqnNnLm; arc=none smtp.client-ip=209.85.221.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b="PEqnNnLm" Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-45ef56d9b67so1540632f8f.2 for ; Sun, 31 May 2026 16:18:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thegoodpenguin-co-uk.20251104.gappssmtp.com; s=20251104; t=1780269479; x=1780874279; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=OIFmAzxejQrp6RSd8J5lsgupOjIxf+PM9ArBTVLQHLA=; b=PEqnNnLmHl0S8gvWvHCtfxtMm3OjAg0V0T1ATBEvcb+BDVEu98VuXwp0r7akRVSXrJ MOWsK+3eLO2Dxej0lJPBhOCZTHWx8VQAnqPJezDCJrCdMyLbcsSzNOakdNA3amFtfHMw ttksN8t1YXot/GyjWpvtPKTyjZQ0eQ33a2CivW2BWicx341hqzHaWa/qolrDGL1G2oOR PZybPB2zyx1k+KdDeNuLrCwyRs6Jl2fiiWnv6/N/g362b6NN5SseAKYo3R9iMLhxTqKf Ppi6sbtZXKG4By8GRtl4HCCTatBFT7PbQPSSjDitHcHGWgCipLBPp66qeVMhf91I4apk 4w6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780269479; x=1780874279; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=OIFmAzxejQrp6RSd8J5lsgupOjIxf+PM9ArBTVLQHLA=; b=XKmc5cuoFruZ80Yr7Za7fNbAwi/ouIX/9lJwqJqalpDIuDg+ahdbFKqRfhzZs2wxnx LIufRThSOt4NQHZwnviZvfMAqID89+vAFwZIrlVLGb2ey4QkMLxx9EPz6FXZCdjQee+w 2YqaOL6cFSrH3br5b2fQ/zwVKOyUxQKjCzRJ2//IAwCY6fmR44SGKdK59vaMDxiMazm3 6K4DGVzG/wei2gmWqoo7/ETeCjpqE4SRF3de/u36sii4gJW/drJC849EYnkCC8kjyoaU E7utzJHxV6LXq+pZC/u5J9GtK4QcGwhH3wEpMh/Tfk72Ml47Zc3tsmLQgzLSUFy8YMwL sgag== X-Forwarded-Encrypted: i=1; AFNElJ9FTkA1gwuYPvcDaOlzaWiXwAkpCTUNtw7I1FQ1Dh2+Lqbm1bozV7H2I0FlJDjvf6uOdxNotLVIWsm4/pk=@vger.kernel.org X-Gm-Message-State: AOJu0Yycy5XHsPyauB1YqDBM15Y5wTEnAHs7uCFT5an2QfFhE/R+F6XA KgR6lrC/rnfjqQmZzI+mf+U2fTVezMakn4vutswncvCHWsLyY67JLQIY47WfEdWnVOU= X-Gm-Gg: Acq92OFg0/YYKg3CL85jYi9eK5uV7/ix+akBq0qwvaDxZ6TPHkIdNC0oz13j2SDaniE FhPwI9du95N2Fsk+zASuS1x2faiChGunbz93G2lYBtjhO/Tmwnq4iznspEyQRJXawdfOLSlyAGP uteJRYByiTBjSKtQa90SJ1OD/T6agGycH0pGYyjo70c1WGpyTlgR05e+7KqjZy/ciwR9KbLAM4H BlKqcQzIATYIrguvkTkEBQcmMA6eoNyaEda2cphvfrFahC2Yf47QPL13pFMLopc6go3tly81gZl oM1hlzfi5D4jhDd4lPXS/sJlkH2vNAPp72Jb+S3aoTaxbFahOaXzLdhZQtkGNKNNyL8buA43+HJ bjDFaspKTkdOPAEltY1kyKQ657rc9pWCrbtyLb8lGPC8kGVFxT1sScNZJn5SDMINn0IkMRF4Vi2 UvXcorp3HbJnK3LuLhaTkq/fQkMUEz/+olvRxkqROrXWLU+i1DWHWpPaoU5sQxdWOpQPzxGrOdm HzLjcyL5jkzY8VCAQAGkUxLEFx1CJQr3TG3EPoB5C4n+P77iAUEU6JqLrJA X-Received: by 2002:a5d:50ce:0:b0:45e:ec18:f207 with SMTP id ffacd0b85a97d-45ef6b58394mr13286575f8f.25.1780269478978; Sun, 31 May 2026 16:17:58 -0700 (PDT) Received: from [127.0.1.1] ([2a00:23c5:7815:1301:f27:e3a8:2334:314d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-45ef34b834esm20496544f8f.11.2026.05.31.16.17.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 31 May 2026 16:17:58 -0700 (PDT) From: Andrew Murray Date: Mon, 01 Jun 2026 00:17:39 +0100 Subject: [PATCH RFC 3/4] printk: nbcon: move printk_delay to console emiting code Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260601-deprecate_boot_delay-v1-3-c34c187142a6@thegoodpenguin.co.uk> References: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> In-Reply-To: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> To: Jonathan Corbet , Shuah Khan , Russell King , Florian Fainelli , Broadcom internal kernel review list , Ray Jui , Scott Branden , Petr Mladek , Steven Rostedt , John Ogness , Sergey Senozhatsky , Andrew Morton , Sebastian Andrzej Siewior , Clark Williams , Randy Dunlap , Linus Torvalds Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rpi-kernel@lists.infradead.org, linux-rt-devel@lists.linux.dev, Andrew Murray X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1780269471; l=4826; i=amurray@thegoodpenguin.co.uk; s=20250914; h=from:subject:message-id; bh=iIdrzIpbtLvWz4MDbsc58aNL3F6fTnbJs47tQmnDnOs=; b=CxvG+4JeIkfc9bjfcipdZnVZu7SXaVegXQCnK10t1RHUldU1+VRTlLNyK3ajoLsSgkqu8OUZe rJ5HYDCjexuDZ2X4RQnZDoGf2ca1dMBWG5Bdu9Baj3Go2bX8E9BqZbu X-Developer-Key: i=amurray@thegoodpenguin.co.uk; a=ed25519; pk=0SU0Q8S/uEiCdbXbXS+PvJGUCaBG1nDszD+HPU3Js0Q= The printk_delay and boot_delay features are helpful for debugging as kernel output can be slowed down during boot allowing messages to be seen before scrolling off the screen, or to correlate timing between some physical event and console output. However, since the introduction of nbcon and the legacy printer thread for PREEMPT_RT kernels, printk records are now emited to the console asynchronously to the caller of printk. Thus, any printk delay added by boot_delay/printk_delay continues to slow down the calling process but may not have any impact to the rate in which records are emited to the console. Let's address this by moving the printk delay from the calling code to the console emiting code instead. Whilst this ensures that delays are still observed (especially for slower consoles), it doesn't improve the use-case of using boot_delay/printk_delay to correlate timings between physical events and console output. Signed-off-by: Andrew Murray --- include/linux/printk.h | 4 ++++ kernel/printk/nbcon.c | 13 ++++++++++++- kernel/printk/printk.c | 15 +++++++-------- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/include/linux/printk.h b/include/linux/printk.h index f594c1266bfd411f2238b45374e8a71222f0407c..8ea3ac8201ad541912547305e24= 1e3661f4d8e05 100644 --- a/include/linux/printk.h +++ b/include/linux/printk.h @@ -209,6 +209,7 @@ extern bool nbcon_device_try_acquire(struct console *co= n); extern void nbcon_device_release(struct console *con); void nbcon_atomic_flush_unsafe(void); bool pr_flush(int timeout_ms, bool reset_on_progress); +void printk_delay(bool use_atomic); #else static inline __printf(1, 0) int vprintk(const char *s, va_list args) @@ -326,6 +327,9 @@ static inline bool pr_flush(int timeout_ms, bool reset_= on_progress) { return true; } +static inline void printk_delay(bool use_atomic) +{ +} =20 #endif =20 diff --git a/kernel/printk/nbcon.c b/kernel/printk/nbcon.c index d7044a7a214bdd4537a5e20d876d99bc3ffe8b3a..a507a2fed5bf4366e24330f763b= 842a698ecf6f7 100644 --- a/kernel/printk/nbcon.c +++ b/kernel/printk/nbcon.c @@ -1267,11 +1267,16 @@ static int nbcon_kthread_func(void *__console) =20 con_flags =3D console_srcu_read_flags(con); =20 + wctxt.len =3D 0; + if (console_is_usable(con, con_flags, false)) backlog =3D nbcon_emit_one(&wctxt, false); =20 console_srcu_read_unlock(cookie); =20 + if (backlog && wctxt.len > 0) + printk_delay(false); + cond_resched(); =20 } while (backlog); @@ -1525,6 +1530,8 @@ bool nbcon_legacy_emit_next_record(struct console *co= n, bool *handover, } =20 progress =3D nbcon_emit_one(&wctxt, use_atomic); + if (progress && wctxt.len > 0) + printk_delay(use_atomic); =20 if (use_atomic) { start_critical_timings(); @@ -1584,6 +1591,8 @@ static int __nbcon_atomic_flush_pending_con(struct co= nsole *con, u64 stop_seq) if (!nbcon_context_try_acquire(ctxt, false)) return -EPERM; =20 + wctxt.len =3D 0; + /* * nbcon_emit_next_record() returns false when * the console was handed over or taken over. @@ -1595,7 +1604,9 @@ static int __nbcon_atomic_flush_pending_con(struct co= nsole *con, u64 stop_seq) nbcon_context_release(ctxt); } =20 - if (!ctxt->backlog) { + if (ctxt->backlog && wctxt.len > 0) { + printk_delay(true); + } else { /* Are there reserved but not yet finalized records? */ if (nbcon_seq_read(con) < stop_seq) err =3D -ENOENT; diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c index ca510b9c76458f5c1e059200060d9d6be4c859b3..5154da85537438905231f829ed8= f2ea2550daf77 100644 --- a/kernel/printk/printk.c +++ b/kernel/printk/printk.c @@ -2140,18 +2140,17 @@ static inline void late_boot_delay_msec(void) } } =20 -static inline void printk_delay(int level) +void printk_delay(bool use_atomic) { - bool suppress =3D !is_printk_force_console() && - suppress_message_printing(level); - - if (likely(!printk_delay_msec) || suppress) + if (likely(!printk_delay_msec)) return; =20 if (system_state < SYSTEM_RUNNING) early_boot_delay_msec(); - else + else if (use_atomic) late_boot_delay_msec(); + else + msleep(printk_delay_msec); } =20 #define CALLER_ID_MASK 0x80000000 @@ -2471,8 +2470,6 @@ asmlinkage int vprintk_emit(int facility, int level, ft.legacy_direct =3D false; } =20 - printk_delay(level); - printed_len =3D vprintk_store(facility, level, dev_info, fmt, args); =20 if (ft.nbcon_atomic) @@ -3171,6 +3168,8 @@ static bool console_emit_next_record(struct console *= con, bool *handover, int co con->dropped =3D 0; } =20 + printk_delay(true); + /* Write everything out to the hardware. */ =20 if (force_legacy_kthread() && !panic_in_progress()) { --=20 2.34.1 From nobody Mon Jun 8 07:27:29 2026 Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 231A63769F9 for ; Sun, 31 May 2026 23:18:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269485; cv=none; b=uZXJ8FaLOddXw2zGuXYm+c+0Z1T7kJq8MRZRoPI/z0+9OCfeG8P9wlLaH/GHcmLWjiKbiSE+O2sHNOOeynf6Kq9R+c6lJKYQVw33oZ3WwXJSkItUQG4EL5S7OLNHdzmLY53M8jtXjtunDSrPH6vpl5vFHcMumBFNm6USVf4cSAg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780269485; c=relaxed/simple; bh=J0TSqvvk90SLybR+T1e1sTTGdTS3luxuOAEJPWZwCwc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=OBDGePcQ9EzfQzAG/qkOZt2mtDWXijw6vTZl81zCo1FB5DLPR3TlhtKNbIwNtKOJt9mAVPygDsLVlUMzW0UQ079TCK16INXsSlS0cN+4ZpMvrVqvag7qpvthFAUfOjLM9JFoyMcbm9VOTtavN7B/pkDGVnMGILvxVLIJ+Vou7do= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk; spf=pass smtp.mailfrom=thegoodpenguin.co.uk; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b=SXy+4G8O; arc=none smtp.client-ip=209.85.221.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=thegoodpenguin.co.uk Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=thegoodpenguin-co-uk.20251104.gappssmtp.com header.i=@thegoodpenguin-co-uk.20251104.gappssmtp.com header.b="SXy+4G8O" Received: by mail-wr1-f49.google.com with SMTP id ffacd0b85a97d-45ef189aa1cso2093392f8f.0 for ; Sun, 31 May 2026 16:18:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thegoodpenguin-co-uk.20251104.gappssmtp.com; s=20251104; t=1780269480; x=1780874280; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=65QPkXlxoBn1znpFptZPvrSc/q4l7OLH3BDyCKXpuCk=; b=SXy+4G8Ona8neOUIkF6BNfYfnyh+DDXIBUAeD3w4bNSAfKyvtbaMtN96HDErzQfk4z ODyyUWisbfA6vaZKamp7Sy+Nh8TrjakTXUlfZeK88x9F8P4KEjP8efgpventSBIfbUEC lWu7wJ7Yv8l6d7W//IWNPA6ZN88d3Nci9TDv0SKGuQRW080koAgLIGo5FLt8iEgpgyXO VfX7GJAjCJzeb7NUdbzsr/oyN4IVydGQb10dwDPxtd16z6O372kXxijGAZkzfnicwzUp hWoBpOnYuqTQgFpc+5pJG8xSJND+KvYfCPVSYFIQTwGUZBqBcse4msEjmSAr2inqjEXh qRKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780269480; x=1780874280; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=65QPkXlxoBn1znpFptZPvrSc/q4l7OLH3BDyCKXpuCk=; b=TxIUpBayJbZcdxvATF+euOlvwWDnFBJsH2BDnYr/Ammu6wxjPcKqPMXL65qLPAo6/t woh65KO2yniHT5ojBAG1J/CYMkV/o2u2OgNOzyBdD4Ryf1WpqKqJRBsK0R+u1zulaNxy 1PgO36dufpJGL2kE0vtElO1rcBo1RzkxQims0mxTpaxdtm9AmQBuu3XTx9wp8Icl7lpz KB9o7fVWep0FwKaE4vSXI0QWxHjl1AhHbyRzCDJy0sQ2SCbMRdePX2pjc1FuKLLmfeEC v5+D+7e0eAKgaFQQM7b1A6na8z2rWYxum5ejufPfT2/x4Ikg0E6+ZmVkODeycGVmu8ri Harg== X-Forwarded-Encrypted: i=1; AFNElJ+3tKQR3A5h9oiAjy3d2f/nnwLSZyTEljsiM4vmlte+MkmY+WKCRBMgEO4vHJ5gzcosOi5wrDOLlRKRhHg=@vger.kernel.org X-Gm-Message-State: AOJu0YxhKuv9EzNuSNzXLIvUFeuRR8+dtUXOj9Sn9Gt3fP1EAq2ZK1bl mzU1vW+Mxv8VjOVhOclaGaUMhoN6w6aF7QFar6YDwCsRdZeeUSX6rcb4WlOrD3nCb88= X-Gm-Gg: Acq92OHc1OBRTvi/YbOrlaZCkmKqAQho+GmP3k8ofH5OMnZlD8FK2oqgG6ViLJScEkb euVzYzJvdwvJnZiO/piitUqAyreiUyr/RaAgux7pyRrufjEOO/1evEPoBsVcDfAzoExxEFIy7i5 Vyk2V7T0azmBYL66HBSTU8HeUGONWWAMneGSMymiozxDqLUgVyiOKOUMaaFfY/b3xA3554kBlWf /9b3WoLTXJzKSZ8CSEosX6j/VhnvKGpAwd6cn8xMLhHrDyFV+nRB2wZL6Vh0rl4lRCW8o3+Ywj4 O5D9EnULKzAbzYMlADXO7lefIoiICzDwtWSMacHXsA0xqhbsQjW5dvlXbpEUBXhMKzR1RizwyCl W08Xzgz/uQaApcLhGaTfG8fS/Rp5LIiUaueOfxbPcj42Oq40M+F69GfNkwgVrfGbEFk9pTy9BOJ wWy/AbZ8VUtCqw2r48c7IU200GOPmG8H1R631M6xYgQUJxdTl8FqCeyCJ7lfqxNi8wJNR0T24SR Z5l1WjYNrJ1JTqtBU01cRvLFxMDZ82fiNgKAdS7FoMGOYWJ9w== X-Received: by 2002:a05:6000:22c7:b0:44e:d7f8:3945 with SMTP id ffacd0b85a97d-45ef6b0d5f3mr16986293f8f.13.1780269480458; Sun, 31 May 2026 16:18:00 -0700 (PDT) Received: from [127.0.1.1] ([2a00:23c5:7815:1301:f27:e3a8:2334:314d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-45ef34b834esm20496544f8f.11.2026.05.31.16.17.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 31 May 2026 16:17:59 -0700 (PDT) From: Andrew Murray Date: Mon, 01 Jun 2026 00:17:40 +0100 Subject: [PATCH RFC 4/4] Documentation/kernel-parameters: add/update printk_delay/boot_delay Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260601-deprecate_boot_delay-v1-4-c34c187142a6@thegoodpenguin.co.uk> References: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> In-Reply-To: <20260601-deprecate_boot_delay-v1-0-c34c187142a6@thegoodpenguin.co.uk> To: Jonathan Corbet , Shuah Khan , Russell King , Florian Fainelli , Broadcom internal kernel review list , Ray Jui , Scott Branden , Petr Mladek , Steven Rostedt , John Ogness , Sergey Senozhatsky , Andrew Morton , Sebastian Andrzej Siewior , Clark Williams , Randy Dunlap , Linus Torvalds Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rpi-kernel@lists.infradead.org, linux-rt-devel@lists.linux.dev, Andrew Murray X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1780269471; l=2336; i=amurray@thegoodpenguin.co.uk; s=20250914; h=from:subject:message-id; bh=J0TSqvvk90SLybR+T1e1sTTGdTS3luxuOAEJPWZwCwc=; b=pLwcIzM8QLMrQYFp9ysGPIsBLbpYGr/QADoMsXS4xYve0tkQyYj8MwL5lG38y/JRyr/+m7k7Z dt3xNPGzPvaCCrZVvkxNqE0SfFMxQgzlLTNRPTyqg/O1adefKaVGgEH X-Developer-Key: i=amurray@thegoodpenguin.co.uk; a=ed25519; pk=0SU0Q8S/uEiCdbXbXS+PvJGUCaBG1nDszD+HPU3Js0Q= boot_delay has been deprecated in favour of an extended printk_delay, let's update kernel-parameters to reflect the addition of printk_delay and the deprecation of boot_delay. Signed-off-by: Andrew Murray --- Documentation/admin-guide/kernel-parameters.txt | 31 +++++++++++++++++++++= ---- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentatio= n/admin-guide/kernel-parameters.txt index 37b618d176f1c499f457f0d8b5679c29ee7ab177..0d6987a54a4f62a952664512fc8= ddb18c6e70f5b 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -655,11 +655,19 @@ Kernel parameters See Documentation/block/cmdline-partition.rst =20 boot_delay=3D [KNL,EARLY] - Milliseconds to delay each printk during boot. - Only works if GENERIC_CALIBRATE_DELAY is enabled, - and you may also have to specify "lpj=3D". Boot_delay - values larger than 10 seconds (10000) are assumed - erroneous and ignored. + Milliseconds to delay each printk during and post boot. + Boot time delays only work if GENERIC_CALIBRATE_DELAY + is enabled. + + Once booted the delay can be removed or adjusted via + the printk_delay sysctl. + + Please note that you may also have to specify "lpj=3D". + Boot_delay values larger than 10 seconds (10000) are + assumed erroneous and ignored. + + This will soon be deprecated, please use printk_delay + instead. Format: integer =20 bootconfig [KNL,EARLY] @@ -5483,6 +5491,19 @@ Kernel parameters printk.time=3D Show timing data prefixed to each printk message line Format: (1/Y/y=3Denable, 0/N/n=3Ddisable) =20 + printk_delay=3D [KNL,EARLY] + Milliseconds to delay each printk during and post boot. + Boot time delays only work if GENERIC_CALIBRATE_DELAY + is enabled. + + Once booted the delay can be removed or adjusted via + the printk_delay sysctl. + + Please note that you may also have to specify "lpj=3D". + Boot_delay values larger than 10 seconds (10000) are + assumed erroneous and ignored. + Format: integer + proc_mem.force_override=3D [KNL] Format: {always | ptrace | never} Traditionally /proc/pid/mem allows memory permissions to be --=20 2.34.1