aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/phy/mscc.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2018-09-26 15:20:11 +0200
committerDavid S. Miller <davem@davemloft.net>2018-09-28 10:25:11 -0700
commit31bae7dad359e7fee7e2857206107b744dfb2a4e (patch)
tree1c8e3cb6353cad1ec071417b52730ceea68b4a4a /drivers/net/phy/mscc.c
parentnet: ethernet: dpaa: remove unused variables (diff)
downloadlinux-dev-31bae7dad359e7fee7e2857206107b744dfb2a4e.tar.xz
linux-dev-31bae7dad359e7fee7e2857206107b744dfb2a4e.zip
phy: mscc: fix printf format
gcc points out that the length of the temporary buffer may not be sufficient for large numbers of leds: drivers/net/phy/mscc.c: In function 'vsc85xx_probe': drivers/net/phy/mscc.c:460:45: error: '-mode' directive writing 5 bytes into a region of size between 0 and 9 [-Werror=format-overflow=] ret = sprintf(led_dt_prop, "vsc8531,led-%d-mode", i); ^~~~~ drivers/net/phy/mscc.c:460:9: note: 'sprintf' output between 19 and 28 bytes into a destination of size 22 ret = sprintf(led_dt_prop, "vsc8531,led-%d-mode", i); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ While we can make a reasonable assumption that the number of LEDs is small, the cost of making the buffer a little bigger is insignificant as well. Fixes: 11bfdabb7ff5 ("net: phy: mscc: factorize code for LEDs mode") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/phy/mscc.c')
-rw-r--r--drivers/net/phy/mscc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c
index 2d9676d78d3f..7d0384e26c99 100644
--- a/drivers/net/phy/mscc.c
+++ b/drivers/net/phy/mscc.c
@@ -453,7 +453,7 @@ static int vsc85xx_dt_led_modes_get(struct phy_device *phydev,
u32 *default_mode)
{
struct vsc8531_private *priv = phydev->priv;
- char led_dt_prop[19];
+ char led_dt_prop[28];
int i, ret;
for (i = 0; i < priv->nleds; i++) {