i40e: clear __I40E_VIRTCHNL_OP_PENDING on invalid min Tx rate
authorStefan Assmann <sassmann@kpanic.de>
Tue, 3 Sep 2019 06:08:10 +0000 (08:08 +0200)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 11 Sep 2019 16:10:46 +0000 (09:10 -0700)
In the case of an invalid min Tx rate being requested
i40e_ndo_set_vf_bw() immediately returns -EINVAL instead of releasing
__I40E_VIRTCHNL_OP_PENDING first.

Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c

index f8aa4de..3d24408 100644 (file)
@@ -4263,7 +4263,8 @@ int i40e_ndo_set_vf_bw(struct net_device *netdev, int vf_id, int min_tx_rate,
        if (min_tx_rate) {
                dev_err(&pf->pdev->dev, "Invalid min tx rate (%d) (greater than 0) specified for VF %d.\n",
                        min_tx_rate, vf_id);
-               return -EINVAL;
+               ret = -EINVAL;
+               goto error;
        }
 
        vf = &pf->vf[vf_id];