Skip to content
  • Geert Uytterhoeven's avatar
    net: phy: leds: Fix truncated LED trigger names · 3c880eb0
    Geert Uytterhoeven authored
    Commit 4567d686 ("phy: increase size of MII_BUS_ID_SIZE and
    bus_id") increased the size of MII bus IDs, but forgot to update the
    private definition in <linux/phy_led_triggers.h>.
    This may cause:
      1. Truncation of LED trigger names,
      2. Duplicate LED trigger names,
      3. Failures registering LED triggers,
      4. Crashes due to bad error handling in the LED trigger failure path.
    
    To fix this, and prevent the definitions going out of sync again in the
    future, let the PHY LED trigger code use the existing MII_BUS_ID_SIZE
    definition.
    
    Example:
      - Before I had triggers "ee700000.etherne:01:100Mbps" and
        "ee700000.etherne:01:10Mbps",
      - After the increase of MII_BUS_ID_SIZE, both became
        "ee700000.ethernet-ffffffff:01:" => FAIL,
      - Now, the triggers are "ee700000.ethernet-ffffffff:01:100Mbps" and
        "ee700000.ethernet-ffffffff:01:10Mbps", which are unique again.
    
    Fixes: 4567d686 ("phy: increase size of MII_BUS_ID_SIZE and bus_id")
    Fixes: 2e0bc452
    
     ("net: phy: leds: add support for led triggers on phy link state change")
    Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
    Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    3c880eb0