qede: Don't try removing unconfigured vlans
[deliverable/linux.git] / drivers / net / ethernet / qlogic / qede / qede_main.c
index 91e7bb0b85c85f65661ff59cf12762b2b96b0592..c9ebb59a58192c13da9c21a93c8adf5a89bd9335 100644 (file)
@@ -2064,10 +2064,13 @@ static int qede_vlan_rx_kill_vid(struct net_device *dev, __be16 proto, u16 vid)
        }
 
        /* Remove vlan */
-       rc = qede_set_ucast_rx_vlan(edev, QED_FILTER_XCAST_TYPE_DEL, vid);
-       if (rc) {
-               DP_ERR(edev, "Failed to remove VLAN %d\n", vid);
-               return -EINVAL;
+       if (vlan->configured) {
+               rc = qede_set_ucast_rx_vlan(edev, QED_FILTER_XCAST_TYPE_DEL,
+                                           vid);
+               if (rc) {
+                       DP_ERR(edev, "Failed to remove VLAN %d\n", vid);
+                       return -EINVAL;
+               }
        }
 
        qede_del_vlan_from_list(edev, vlan);
This page took 0.02394 seconds and 5 git commands to generate.