From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 06399A09E4; Thu, 21 Jan 2021 15:39:17 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A83D6140E23; Thu, 21 Jan 2021 15:39:17 +0100 (CET) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mails.dpdk.org (Postfix) with ESMTP id 8E109140E22; Thu, 21 Jan 2021 15:39:15 +0100 (CET) IronPort-SDR: //QEhRFLwZhBcQaRle2ycssStHdg/G2Q4WFQANVvccKZakKLCJc1LTQZ7b17g1P72OkzCf9ehw o5hbnJRSbbVg== X-IronPort-AV: E=McAfee;i="6000,8403,9870"; a="175769622" X-IronPort-AV: E=Sophos;i="5.79,364,1602572400"; d="scan'208";a="175769622" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jan 2021 06:39:13 -0800 IronPort-SDR: PtLjmEbRmSMsxUBLqbA9RWBEkBp+eGq91vxg0y/wICWQCfTLM45MFEyymrDsDm0S2w5lSkh6GW WoibLOPeYD7A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,364,1602572400"; d="scan'208";a="467470051" Received: from npg-dpdk-haiyue-3.sh.intel.com ([10.67.118.189]) by fmsmga001.fm.intel.com with ESMTP; 21 Jan 2021 06:39:11 -0800 From: Haiyue Wang To: dev@dpdk.org Cc: qiming.yang@intel.com, qi.z.zhang@intel.com, qi.fu@intel.com, Haiyue Wang , stable@dpdk.org Date: Thu, 21 Jan 2021 22:23:16 +0800 Message-Id: <20210121142316.84087-1-haiyue.wang@intel.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <220210121141804.83855-1-haiyue.wang@intel.com> References: <220210121141804.83855-1-haiyue.wang@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v2] net/ice: drain out DCF AdminQ command queue X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The virtchnl command message response is handled by matching the opcode only for limitation. The DCF AdminQ command with buffer data needs two virtchnl commands, one is to handle the AdminQ header, the other is to handle AdminQ buffer. If the AdminQ header command gets the failure response, the AdminQ buffer command needs to wait for the buffer message response until timeout to drain out the virtchnl command queue, since both of them are sent to PF, the PF will handle them one by one, and send back the response. If not, it will cause the next AdminQ command failure with the stall response. Fixes: daa714d55c72 ("net/ice: handle AdminQ command by DCF") Cc: stable@dpdk.org Signed-off-by: Haiyue Wang --- v2: Fix the commit message typo : 'matchiing' should be 'matching' --- drivers/net/ice/ice_dcf.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/net/ice/ice_dcf.c b/drivers/net/ice/ice_dcf.c index 4a9af3292c..a211797d9e 100644 --- a/drivers/net/ice/ice_dcf.c +++ b/drivers/net/ice/ice_dcf.c @@ -506,7 +506,6 @@ ice_dcf_send_aq_cmd(void *dcf_hw, struct ice_aq_desc *desc, do { if ((!desc_cmd.pending && !buff_cmd.pending) || - (!desc_cmd.pending && desc_cmd.v_ret != IAVF_SUCCESS) || (!buff_cmd.pending && buff_cmd.v_ret != IAVF_SUCCESS)) break; -- 2.30.0