From 891121d8912336b30df9a6561d0c2b6b444d2873 Mon Sep 17 00:00:00 2001 From: Jingjing Wu Date: Thu, 26 Mar 2015 05:38:12 +0800 Subject: [PATCH] i40e: fix flow director This patch sets the local variable ctxt to zero to avoid uncertain data causes error when creating a vsi for flow director. Signed-off-by: Jingjing Wu Acked-by: Helin Zhang --- lib/librte_pmd_i40e/i40e_ethdev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/librte_pmd_i40e/i40e_ethdev.c b/lib/librte_pmd_i40e/i40e_ethdev.c index cf6685ebaf..80fc432b88 100644 --- a/lib/librte_pmd_i40e/i40e_ethdev.c +++ b/lib/librte_pmd_i40e/i40e_ethdev.c @@ -3120,6 +3120,7 @@ i40e_vsi_setup(struct i40e_pf *pf, ctxt.info.valid_sections |= rte_cpu_to_le_16(I40E_AQ_VSI_PROP_SCHED_VALID); } else if (type == I40E_VSI_FDIR) { + memset(&ctxt, 0, sizeof(ctxt)); vsi->uplink_seid = uplink_vsi->uplink_seid; ctxt.pf_num = hw->pf_id; ctxt.vf_num = 0; @@ -3143,7 +3144,7 @@ i40e_vsi_setup(struct i40e_pf *pf, if (vsi->type != I40E_VSI_MAIN) { ret = i40e_aq_add_vsi(hw, &ctxt, NULL); - if (ret) { + if (ret != I40E_SUCCESS) { PMD_DRV_LOG(ERR, "add vsi failed, aq_err=%d", hw->aq.asq_last_status); goto fail_msix_alloc; -- 2.20.1