DPDK patches and discussions
 help / color / mirror / Atom feed
From: Helin Zhang <helin.zhang@intel.com>
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH v3 07/30] i40e/base: set aq count after memory allocation
Date: Thu, 18 Feb 2016 22:34:13 +0800	[thread overview]
Message-ID: <1455806076-18497-8-git-send-email-helin.zhang@intel.com> (raw)
In-Reply-To: <1455806076-18497-1-git-send-email-helin.zhang@intel.com>

The standard way to check if the AQ is enabled is to look at the
count field. So it should only set this field after it has
successfully allocated memory. To do otherwise is to incite
panic among the populace.

Signed-off-by: Helin Zhang <helin.zhang@intel.com>
---
 drivers/net/i40e/base/i40e_adminq.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/i40e/base/i40e_adminq.c b/drivers/net/i40e/base/i40e_adminq.c
index e1a162e..ee563e4 100644
--- a/drivers/net/i40e/base/i40e_adminq.c
+++ b/drivers/net/i40e/base/i40e_adminq.c
@@ -431,7 +431,6 @@ enum i40e_status_code i40e_init_asq(struct i40e_hw *hw)
 
 	hw->aq.asq.next_to_use = 0;
 	hw->aq.asq.next_to_clean = 0;
-	hw->aq.asq.count = hw->aq.num_asq_entries;
 
 	/* allocate the ring memory */
 	ret_code = i40e_alloc_adminq_asq_ring(hw);
@@ -449,6 +448,7 @@ enum i40e_status_code i40e_init_asq(struct i40e_hw *hw)
 		goto init_adminq_free_rings;
 
 	/* success! */
+	hw->aq.asq.count = hw->aq.num_asq_entries;
 	goto init_adminq_exit;
 
 init_adminq_free_rings:
@@ -490,7 +490,6 @@ enum i40e_status_code i40e_init_arq(struct i40e_hw *hw)
 
 	hw->aq.arq.next_to_use = 0;
 	hw->aq.arq.next_to_clean = 0;
-	hw->aq.arq.count = hw->aq.num_arq_entries;
 
 	/* allocate the ring memory */
 	ret_code = i40e_alloc_adminq_arq_ring(hw);
@@ -508,6 +507,7 @@ enum i40e_status_code i40e_init_arq(struct i40e_hw *hw)
 		goto init_adminq_free_rings;
 
 	/* success! */
+	hw->aq.arq.count = hw->aq.num_arq_entries;
 	goto init_adminq_exit;
 
 init_adminq_free_rings:
-- 
2.5.0

  parent reply	other threads:[~2016-02-18 14:34 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1455776683-11790-1-git-send-email-helin.zhang@intel.com>
2016-02-18 14:34 ` [dpdk-dev] [PATCH v3 00/30] i40e base driver update Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 01/30] i40e/base: use explicit cast from u16 to u8 Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 02/30] i40e/base: acquire NVM, before issuing an AQ read nvm command Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 03/30] i40e/base: add hw flag for SRCTL access using AQ for X722 Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 04/30] i40e/base: add changes in nvm read to support X722 Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 05/30] i40e/base: limit DCB FW version checks to XL710/X710 devices Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 06/30] i40e/base: check for stopped admin queue Helin Zhang
2016-02-18 14:34   ` Helin Zhang [this message]
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 08/30] i40e/base: clean event descriptor before use Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 09/30] i40e/base: add new device IDs and delete deprecated one Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 10/30] i40e/base: fix up recent proxy and wol bits for X722_SUPPORT Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 11/30] i40e/base: define function capabilities in only one place Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 12/30] i40e/base: fix for PHY NVM interaction problem Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 13/30] i40e/base: set shared bit for multicast filters Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 14/30] i40e/base: add APIs to Add/remove port mirroring rules Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 15/30] i40e/base: add VEB stat control and remove L2 cloud filter Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 16/30] i40e/base: implement the API function for aq_set_switch_config Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 17/30] i40e/base: add functions to blink led on Coppervale PHY Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 18/30] i40e/base: apply promisc mode to Tx Traffic Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 19/30] i40e/base: increase timeout when checking GLGEN_RSTAT_DEVSTATE bit Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 20/30] i40e/base: save off VSI resource count when updating VSI Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 21/30] i40e/base: coding style fixes Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 22/30] i40e/base: use FW to read/write rx control registers Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 23/30] i40e/base: expose some registers to program parser, FD and RSS logic Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 24/30] i40e/base: add a Virtchnl offload for RSS PCTYPE V2 Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 25/30] i40e/base: add AQ thermal sensor control struct Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 26/30] i40e/base: add/update structure and macro definitions Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 27/30] i40e: add base driver release info Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 28/30] i40e: add/remove new device IDs Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 29/30] i40e: use rx control function for rx control registers Helin Zhang
2016-02-18 14:34   ` [dpdk-dev] [PATCH v3 30/30] i40evf: use base driver defined interface Helin Zhang
2016-02-19  5:14   ` [dpdk-dev] [PATCH v3 00/30] i40e base driver update Wu, Jingjing
2016-03-03 20:36   ` Bruce Richardson
2016-03-06 15:41   ` [dpdk-dev] [PATCH v4 00/29] " Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 01/29] i40e/base: fix compilation warnings Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 02/29] i40e/base: acquire NVM ownership before reading it Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 03/29] i40e/base: add hw flag for X722 register access Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 04/29] i40e/base: add X722 support on nvm read Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 05/29] i40e/base: limit version check of DCB Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 06/29] i40e/base: fix missing check for stopped admin queue Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 07/29] i40e/base: set aq count after memory allocation Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 08/29] i40e/base: fix uncertain event descriptor issue Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 09/29] i40e: update device id Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 10/29] i40e/base: fix up recent wol bits for X722_SUPPORT Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 11/29] i40e/base: fix up recent proxy " Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 12/29] i40e/base: unify the capability function Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 13/29] i40e/base: fix for PHY NVM interaction problem Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 14/29] i40e/base: set shared bit for multicast filters Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 15/29] i40e/base: support operating port mirroring rules Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 16/29] i40e: add VEB stat control Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 17/29] i40e/base: implement new API function Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 18/29] i40e/base: add functions to blink led Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 19/29] i40e/base: apply promisc mode to Tx Traffic Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 20/29] i40e/base: fix driver load failure Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 21/29] i40e/base: save off VSI resource count Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 22/29] i40e/base: coding style fixes Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 23/29] i40e: use AQ rx control register read/write Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 24/29] i40e: expose some registers Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 25/29] i40e/base: add a new Virtchnl offload Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 26/29] i40e/base: add AQ thermal sensor control struct Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 27/29] i40e: update structure and macro definitions Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 28/29] i40e: add base driver release info Helin Zhang
2016-03-06 15:41     ` [dpdk-dev] [PATCH v4 29/29] i40evf: use base driver defined interface Helin Zhang
2016-03-08  8:14     ` [dpdk-dev] [PATCH v5 00/29] i40e base driver update Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 01/29] i40e/base: fix compilation warnings Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 02/29] i40e/base: acquire NVM ownership before reading it Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 03/29] i40e/base: add hw flag for X722 register access Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 04/29] i40e/base: add X722 support on nvm read Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 05/29] i40e/base: limit version check of DCB Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 06/29] i40e/base: fix missing check for stopped admin queue Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 07/29] i40e/base: set aq count after memory allocation Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 08/29] i40e/base: fix uncertain event descriptor issue Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 09/29] i40e: update device id Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 10/29] i40e/base: fix up recent wol bits for X722_SUPPORT Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 11/29] i40e/base: fix up recent proxy " Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 12/29] i40e/base: unify the capability function Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 13/29] i40e/base: fix for PHY NVM interaction problem Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 14/29] i40e/base: set shared bit for multicast filters Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 15/29] i40e/base: support operating port mirroring rules Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 16/29] i40e: add VEB stat control Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 17/29] i40e/base: implement new API function Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 18/29] i40e/base: add functions to blink led Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 19/29] i40e/base: apply promisc mode to Tx Traffic Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 20/29] i40e/base: fix driver load failure Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 21/29] i40e/base: save off VSI resource count Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 22/29] i40e/base: coding style fixes Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 23/29] i40e: use AQ rx control register read/write Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 24/29] i40e: expose some registers Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 25/29] i40e/base: add a new Virtchnl offload Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 26/29] i40e/base: add AQ thermal sensor control struct Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 27/29] i40e: update structure and macro definitions Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 28/29] i40e: add base driver release info Helin Zhang
2016-03-08  8:14       ` [dpdk-dev] [PATCH v5 29/29] i40evf: use base driver defined interface Helin Zhang
2016-03-08  9:55       ` [dpdk-dev] [PATCH v5 00/29] i40e base driver update Remy Horton
2016-03-08 12:52         ` Bruce Richardson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1455806076-18497-8-git-send-email-helin.zhang@intel.com \
    --to=helin.zhang@intel.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).