Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d4c642ea authored by Fabio Estevam's avatar Fabio Estevam Committed by David S. Miller
Browse files

gianfar: Call netif_carrier_off() prior to registration



Quoting David Miller:
"At the moment you call register_netdev() the device is visible, notifications
are sent to userspace, and userland tools can try to bring the interface up
and see the incorrect link state, before you do the netif_carrier_off().

Said another way, between the register_netdev() and netif_carrier_off() call,
userspace can see the device in an inconsistent state."

So call netif_carrier_off() prior to register_netdev().

Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3bfdc59a
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1373,6 +1373,9 @@ static int gfar_probe(struct platform_device *ofdev)

	gfar_hw_init(priv);

	/* Carrier starts down, phylib will bring it up */
	netif_carrier_off(dev);

	err = register_netdev(dev);

	if (err) {
@@ -1380,9 +1383,6 @@ static int gfar_probe(struct platform_device *ofdev)
		goto register_fail;
	}

	/* Carrier starts down, phylib will bring it up */
	netif_carrier_off(dev);

	device_init_wakeup(&dev->dev,
			   priv->device_flags &
			   FSL_GIANFAR_DEV_HAS_MAGIC_PACKET);