• Pierre Moreau's avatar
    drm/nouveau/bl: Assign different names to interfaces · db1a0ae2
    Pierre Moreau authored
    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: default avatarPierre Moreau <pierre.morrow@free.fr>
    Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
    db1a0ae2
nouveau_backlight.c 8.6 KB