Re: [PATCH 5.10 261/406] leds: Fix BUG_ON check for LED_COLOR_ID_MULTI that is always false

Marek Behún
2023-09-18T15:33:07Z

Greg, please drop this patch from both 5.10 and 5.15.

Reference:
https://lore.kernel.org/linux-leds/ZQLelWcNjjp2xndY@duo.ucw.cz/T/

I am going to send a fix to drop the check altogether.

Marek

On Sun, 17 Sep 2023 21:11:55 +0200
Greg Kroah-Hartman <gregkh@linuxfoundation.org> wrote:

> 5.10-stable review patch. If anyone has any objections, please let me know.
>
> ------------------
>
> From: Marek Behún <kabel@kernel.org>
>
> [ Upstream commit c3f853184bed04105682383c2971798c572226b5 ]
>
> At the time we call
> BUG_ON(props.color == LED_COLOR_ID_MULTI);
> the props variable is still initialized to zero.
>
> Call the BUG_ON only after we parse fwnode into props.
>
> Fixes: 77dce3a22e89 ("leds: disallow /sys/class/leds/*:multi:* for now")
> Signed-off-by: Marek Behún <kabel@kernel.org>
> Link: https://lore.kernel.org/r/20230801151623.30387-1-kabel@kernel.org
> Signed-off-by: Lee Jones <lee@kernel.org>
> Signed-off-by: Sasha Levin <sashal@kernel.org>
> ---
> drivers/leds/led-core.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/leds/led-core.c b/drivers/leds/led-core.c
> index c4e780bdb3852..2cf5897339ac1 100644
> --- a/drivers/leds/led-core.c
> +++ b/drivers/leds/led-core.c
> @@ -425,15 +425,15 @@ int led_compose_name(struct device *dev, struct led_init_data *init_data,
> struct fwnode_handle *fwnode = init_data->fwnode;
> const char *devicename = init_data->devicename;
>
> - /* We want to label LEDs that can produce full range of colors
> - * as RGB, not multicolor */
> - BUG_ON(props.color == LED_COLOR_ID_MULTI);
> -
> if (!led_classdev_name)
> return -EINVAL;
>
> led_parse_fwnode_props(dev, fwnode, &props);
>
> + /* We want to label LEDs that can produce full range of colors
> + * as RGB, not multicolor */
> + BUG_ON(props.color == LED_COLOR_ID_MULTI);
> +
> if (props.label) {
> /*
> * If init_data.devicename is NULL, then it indicates that