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

Commit ce305002 authored by Patrick McHardy's avatar Patrick McHardy Committed by David S. Miller
Browse files

vlan: Move device unregistration before lower dev cleanup



Move the unregister_netdevice() call for the VLAN device before cleanup
for the lower device. This is needed by GVRP so it can send a leave
message before the applicant on the lower device is cleaned up.

Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent b3ce0325
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -165,6 +165,8 @@ void unregister_vlan_dev(struct net_device *dev)

	synchronize_net();

	unregister_netdevice(dev);

	/* If the group is now empty, kill off the group. */
	if (grp->nr_vlans == 0) {
		if (real_dev->features & NETIF_F_HW_VLAN_RX)
@@ -178,8 +180,6 @@ void unregister_vlan_dev(struct net_device *dev)

	/* Get rid of the vlan's reference to real_dev */
	dev_put(real_dev);

	unregister_netdevice(dev);
}

static void vlan_transfer_operstate(const struct net_device *dev,