drm/nouveau/bl: Assign different names to interfaces
Currently, every backlight interface created by Nouveau uses the same name, nv_backlight. This leads to a sysfs warning as it tries to create an already existing folder. This patch adds a incremented number to the name, but keeps the initial name as nv_backlight, to avoid possibly breaking userspace; the second interface will be named nv_backlight1, and so on. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=86539 v2: * Switch to using ida for generating unique IDs, as suggested by Ilia Mirkin; * Allocate backlight name on the stack, as suggested by Ilia Mirkin; * Move `nouveau_get_backlight_name()` to avoid forward declaration, as suggested by Ilia Mirkin; * Fix reference to bug report formatting, as reported by Nick Tenney. v3: * Define a macro for the size of the backlight name, to avoid defining it multiple times; * Use snprintf in place of sprintf. v4: * Do not create similarly named interfaces when reaching the maximum amount of unique names, but fail instead, as pointed out by Lukas Wunner Signed-off-by: Pierre Moreau <pierre.morrow@free.fr> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:

gecommit door
Ben Skeggs

bovenliggende
79d48dadb0
commit
db1a0ae214
@@ -1122,6 +1122,7 @@ nouveau_drm_init(void)
|
||||
#endif
|
||||
|
||||
nouveau_register_dsm_handler();
|
||||
nouveau_backlight_ctor();
|
||||
return drm_pci_init(&driver_pci, &nouveau_drm_pci_driver);
|
||||
}
|
||||
|
||||
@@ -1132,6 +1133,7 @@ nouveau_drm_exit(void)
|
||||
return;
|
||||
|
||||
drm_pci_exit(&driver_pci, &nouveau_drm_pci_driver);
|
||||
nouveau_backlight_dtor();
|
||||
nouveau_unregister_dsm_handler();
|
||||
|
||||
#ifdef CONFIG_NOUVEAU_PLATFORM_DRIVER
|
||||
|
Verwijs in nieuw issue
Block a user