i40e: add check on i40e_configure_tx_ring() return value
authorhuhai <huhai@kylinos.cn>
Mon, 22 Jul 2019 11:55:59 +0000 (19:55 +0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 22 Aug 2019 20:24:13 +0000 (13:24 -0700)
When i40e_configure_tx_ring(vsi->tx_rings[i]) returns an error, we should
exit from i40e_vsi_configure_tx and return the error, instead of continuing
to check whether xdp is enable, and configure the xdp transmit ring.

Signed-off-by: huhai <huhai@kylinos.cn>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_main.c

index 6d456e5793143bccdaaf287877762510618194f0..b807dd6b1417394a692ef642660863e51819b4a5 100644 (file)
@@ -3364,7 +3364,7 @@ static int i40e_vsi_configure_tx(struct i40e_vsi *vsi)
        for (i = 0; (i < vsi->num_queue_pairs) && !err; i++)
                err = i40e_configure_tx_ring(vsi->tx_rings[i]);
 
-       if (!i40e_enabled_xdp_vsi(vsi))
+       if (err || !i40e_enabled_xdp_vsi(vsi))
                return err;
 
        for (i = 0; (i < vsi->num_queue_pairs) && !err; i++)