Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net: dsa: Do not suspend/resume closed slave_dev

If a DSA slave network device was previously disabled, there is no need
to suspend or resume it.

Fixes: 2446254915a7 ("net: dsa: allow switch drivers to implement suspend/resume hooks")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Florian Fainelli and committed by
David S. Miller
a94c689e bc5b6c0b

+6
+6
net/dsa/slave.c
··· 1248 1248 { 1249 1249 struct dsa_port *dp = dsa_slave_to_port(slave_dev); 1250 1250 1251 + if (!netif_running(slave_dev)) 1252 + return 0; 1253 + 1251 1254 netif_device_detach(slave_dev); 1252 1255 1253 1256 rtnl_lock(); ··· 1263 1260 int dsa_slave_resume(struct net_device *slave_dev) 1264 1261 { 1265 1262 struct dsa_port *dp = dsa_slave_to_port(slave_dev); 1263 + 1264 + if (!netif_running(slave_dev)) 1265 + return 0; 1266 1266 1267 1267 netif_device_attach(slave_dev); 1268 1268