Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: - [Critical] Sysfs attributes were inadvertently moved from the backlight class device to the platform device, breaking userspace ABI. --
commit b4eaddced56809e9f87ffe143724f151f0e7013e Author: Svyatoslav Ryhel <[email protected]> mfd: lm3533: Use dev_groups in struct device_driver This commit replaces manual sysfs attribute creation during probe and removal in favor of using dev_groups in struct device_driver. The goal is to let the core handle the creation and removal of these attributes automatically. > diff --git a/drivers/video/backlight/lm3533_bl.c > b/drivers/video/backlight/lm3533_bl.c > index 4d6f680334802..9ef171d3aaeab 100644 > --- a/drivers/video/backlight/lm3533_bl.c > +++ b/drivers/video/backlight/lm3533_bl.c [ ... ] > @@ -304,28 +309,17 @@ static int lm3533_bl_probe(struct platform_device *pdev) > > platform_set_drvdata(pdev, bl); > > - ret = sysfs_create_group(&bd->dev.kobj, &lm3533_bl_attribute_group); [Severity: Critical] By removing this manual sysfs_create_group() call and moving it to the platform driver's dev_groups, will this change the location of the sysfs attributes? The original code registers the attributes on the backlight class device's kobject (&bd->dev.kobj), meaning they appear under /sys/class/backlight/<name>/. > - if (ret < 0) { > - dev_err(&pdev->dev, "failed to create sysfs attributes\n"); > - return ret; > - } > - > backlight_update_status(bd); [ ... ] > @@ -377,6 +370,7 @@ static struct platform_driver lm3533_bl_driver = { > .driver = { > .name = "lm3533-backlight", > .pm = &lm3533_bl_pm_ops, > + .dev_groups = lm3533_bl_attribute_groups, [Severity: Critical] Does moving the attributes to the platform driver's dev_groups inadvertently register them on the platform device instead of the backlight class device? This means attributes like als_channel, als_en, and linear would now be exposed under /sys/bus/platform/devices/lm3533-backlight.<id>/ instead of their previous location. Will this break backward compatibility for userspace tools relying on the standard backlight path? > }, > .probe = lm3533_bl_probe, > .remove = lm3533_bl_remove, -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=11
