diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c index 64f2ab663ffe0fe4d56524927c8b4a46781478a2..474396353e7f8c7e1519834bdd36017048f9e487 100644 --- a/drivers/net/vrf.c +++ b/drivers/net/vrf.c @@ -672,7 +672,7 @@ static int vrf_device_event(struct notifier_block *unused, if (event == NETDEV_UNREGISTER) { struct net_device *vrf_dev; - if (netif_is_l3_master(dev)) + if (!vrf_is_slave(dev) || netif_is_l3_master(dev)) goto out; vrf_dev = netdev_master_upper_dev_get(dev);