lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250625092450.GT795775@google.com>
Date: Wed, 25 Jun 2025 10:24:50 +0100
From: Lee Jones <lee@...nel.org>
To: Arnd Bergmann <arnd@...nel.org>
Cc: Pavel Machek <pavel@...nel.org>, Arnd Bergmann <arnd@...db.de>,
	Hans de Goede <hansg@...nel.org>, linux-leds@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] leds: trigger: ledtrig-cpu:: enforce NR_CPUS limit in
 Kconfig

On Fri, 20 Jun 2025, Arnd Bergmann wrote:

> From: Arnd Bergmann <arnd@...db.de>
> 
> This driver fails build testing with larger values of CONFIG_NR_CPUS:
> 
> drivers/leds/trigger/ledtrig-cpu.c: In function ‘ledtrig_cpu_init’:
> include/linux/compiler_types.h:571:45: error: call to ‘__compiletime_assert_726’ declared with attribute error: BUILD_BUG_ON failed: CONFIG_NR_CPUS > 9999
> drivers/leds/trigger/ledtrig-cpu.c:137:9: note: in expansion of macro ‘BUILD_BUG_ON’
>   137 |         BUILD_BUG_ON(CONFIG_NR_CPUS > 9999);
> 
> Enforce this limit in Kconfig instead to avoid the build failure.

I have so many questions!

- This number seems arbitrary - what is the limiting factor?
  - Character size for printing?
- What platform did you test this on to blow through that number?
- What if we really do want 10000+ CPUs?
  - And what will that LED array look like to support them all?
- If we're enforcing here, is the BUILD_BUG_ON() now superfluous?

> Signed-off-by: Arnd Bergmann <arnd@...db.de>
> ---
>  drivers/leds/trigger/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig
> index c11282a74b5a..e07bd17cfe35 100644
> --- a/drivers/leds/trigger/Kconfig
> +++ b/drivers/leds/trigger/Kconfig
> @@ -65,6 +65,7 @@ config LEDS_TRIGGER_BACKLIGHT
>  config LEDS_TRIGGER_CPU
>  	bool "LED CPU Trigger"
>  	depends on !PREEMPT_RT
> +	depends on NR_CPUS <= 9999
>  	help
>  	  This allows LEDs to be controlled by active CPUs. This shows
>  	  the active CPUs across an array of LEDs so you can see which
> -- 
> 2.39.5
> 

-- 
Lee Jones [李琼斯]

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ