* [PATCH v2] leds: blinkm: Clean up sysfs group on LED registration failure
@ 2026-09-26 0:03 Myeonghun Pak
2026-09-26 0:12 ` sashiko-bot
0 siblings, 1 reply; 2+ messages in thread
From: Myeonghun Pak @ 2026-09-26 0:03 UTC (permalink / raw)
To: Jan-Simon Moeller
Cc: Lee Jones, Pavel Machek, Joseph Strauss, linux-leds, linux-kernel,
stable
blinkm_probe() creates the BlinkM sysfs group before registering the LED
class devices. If multicolor sub-LED allocation fails, probe returns
without removing the group. If multicolor LED registration fails, the
helper removes the group but returns success, leaving the device bound
without an LED class device.
Keep LED class device rollback in the registration helpers, but remove
the BlinkM sysfs group in blinkm_probe() when either registration mode
fails. Propagate the multicolor registration error so probe can perform
this cleanup and report the failure.
Fixes: 56e8c56c9af0 ("leds: Add multicolor support to BlinkM LED driver")
Cc: stable@vger.kernel.org
Assisted-by: LLM
Co-developed-by: Ijae Kim <ae878000@gmail.com>
Signed-off-by: Ijae Kim <ae878000@gmail.com>
Signed-off-by: Myeonghun Pak <mhun512@gmail.com>
---
Changes in v2:
- Move sysfs group cleanup to blinkm_probe() for both LED registration modes.
- Propagate multicolor LED registration errors to blinkm_probe().
drivers/leds/leds-blinkm.c | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/drivers/leds/leds-blinkm.c b/drivers/leds/leds-blinkm.c
--- a/drivers/leds/leds-blinkm.c
+++ b/drivers/leds/leds-blinkm.c
@@ -671,7 +671,6 @@ failblue:
failgreen:
led_classdev_unregister(&leds[RED]->cdev.led_cdev);
failred:
- sysfs_remove_group(&client->dev.kobj, &blinkm_group);
return err;
}
@@ -714,9 +713,8 @@ static int register_multicolor(struct i2c_client *client, struct blinkm_data *da
if (err < 0) {
dev_err(&client->dev, "couldn't register LED %s\n",
mc_led->cdev.led_cdev.name);
- sysfs_remove_group(&client->dev.kobj, &blinkm_group);
}
- return 0;
+ return err;
}
static int blinkm_probe(struct i2c_client *client)
@@ -749,13 +747,12 @@ static int blinkm_probe(struct i2c_client *client)
}
- if (!IS_ENABLED(CONFIG_LEDS_BLINKM_MULTICOLOR)) {
+ if (!IS_ENABLED(CONFIG_LEDS_BLINKM_MULTICOLOR))
err = register_separate_colors(client, data);
- if (err < 0)
- return err;
- } else {
+ else
err = register_multicolor(client, data);
- if (err < 0)
- return err;
+ if (err < 0) {
+ sysfs_remove_group(&client->dev.kobj, &blinkm_group);
+ return err;
}
blinkm_init_hw(client);
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH v2] leds: blinkm: Clean up sysfs group on LED registration failure
2026-09-26 0:03 [PATCH v2] leds: blinkm: Clean up sysfs group on LED registration failure Myeonghun Pak
@ 2026-09-26 0:12 ` sashiko-bot
0 siblings, 0 replies; 2+ messages in thread
From: sashiko-bot @ 2026-09-26 0:12 UTC (permalink / raw)
To: Myeonghun Pak; +Cc: lee, linux-leds
> blinkm_probe() creates the BlinkM sysfs group before registering the LED
> class devices. If multicolor sub-LED allocation fails, probe returns
> without removing the group. If multicolor LED registration fails, the
> helper removes the group but returns success, leaving the device bound
> without an LED class device.
>
> Keep LED class device rollback in the registration helpers, but remove
> the BlinkM sysfs group in blinkm_probe() when either registration mode
> fails. Propagate the multicolor registration error so probe can perform
> this cleanup and report the failure.
>
> Fixes: 56e8c56c9af0 ("leds: Add multicolor support to BlinkM LED driver")
> Cc: stable@vger.kernel.org
> Assisted-by: LLM
> Co-developed-by: Ijae Kim <ae878000@gmail.com>
> Signed-off-by: Ijae Kim <ae878000@gmail.com>
> Signed-off-by: Myeonghun Pak <mhun512@gmail.com>
Sashiko has reviewed this patch and found no issues. It looks great!
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260926000344.29899-1-mhun512@gmail.com?part=1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-26 0:12 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-26 0:03 [PATCH v2] leds: blinkm: Clean up sysfs group on LED registration failure Myeonghun Pak
2026-09-26 0:12 ` sashiko-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox