All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem
  2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem Xiaoyun wang
@ 2020-04-01  9:28   ` Kevin Traynor
  2020-04-03 17:24   ` Ferruh Yigit
  1 sibling, 0 replies; 6+ messages in thread
From: Kevin Traynor @ 2020-04-01  9:28 UTC (permalink / raw)
  To: Xiaoyun wang, dev
  Cc: ferruh.yigit, bluca, luoxianjun, luoxingyu, zhouguoyang,
	xuanziyang2, shahar.belkar, yin.yinshi

On 01/04/2020 10:30, Xiaoyun wang wrote:
> When PF detects FW is hotactive, up returns HINIC_DEV_BUSY_ACTIVE_FW for
> pf driver, when cmdq reinit at txrx flush, cmdq will fail, driver should
> reinit the cmdq when port start.
> 
> Fixes: d9ce1917941c ("net/hinic/base: add hardware operation")

Hi. Please add tag below if you are requesting this for backport.
(http://doc.dpdk.org/guides/contributing/patches.html#patch-for-stable-releases)

Cc: stable@dpdk.org

> Signed-off-by: Xiaoyun wang <cloud.wangxiaoyun@huawei.com>
> ---
>  drivers/net/hinic/base/hinic_pmd_cmdq.c  |  7 ++++--
>  drivers/net/hinic/base/hinic_pmd_hwdev.c |  4 ++--
>  drivers/net/hinic/base/hinic_pmd_mgmt.c  | 40 ++++++++++++++++++--------------
>  drivers/net/hinic/base/hinic_pmd_mgmt.h  |  2 ++
>  drivers/net/hinic/base/hinic_pmd_nicio.c |  2 +-
>  drivers/net/hinic/hinic_pmd_ethdev.c     |  7 +-----
>  6 files changed, 33 insertions(+), 29 deletions(-)
> 
> diff --git a/drivers/net/hinic/base/hinic_pmd_cmdq.c b/drivers/net/hinic/base/hinic_pmd_cmdq.c
> index 685498e..2e98b9c 100644
> --- a/drivers/net/hinic/base/hinic_pmd_cmdq.c
> +++ b/drivers/net/hinic/base/hinic_pmd_cmdq.c
> @@ -440,9 +440,12 @@ static int hinic_set_cmdq_ctxts(struct hinic_hwdev *hwdev)
>  					     cmdq_ctxt, in_size, NULL,
>  					     NULL, 0);
>  		if (err) {
> -			if (err == HINIC_MBOX_PF_BUSY_ACTIVE_FW)
> +			if (err == HINIC_MBOX_PF_BUSY_ACTIVE_FW ||
> +				err == HINIC_DEV_BUSY_ACTIVE_FW) {
>  				cmdqs->status |= HINIC_CMDQ_SET_FAIL;
> -			PMD_DRV_LOG(ERR, "Set cmdq ctxt failed");
> +				PMD_DRV_LOG(ERR, "PF or VF fw is hot active");
> +			}
> +			PMD_DRV_LOG(ERR, "Set cmdq ctxt failed, err: %d", err);
>  			return -EFAULT;
>  		}
>  	}
> diff --git a/drivers/net/hinic/base/hinic_pmd_hwdev.c b/drivers/net/hinic/base/hinic_pmd_hwdev.c
> index cf2a970..fc11ecd 100644
> --- a/drivers/net/hinic/base/hinic_pmd_hwdev.c
> +++ b/drivers/net/hinic/base/hinic_pmd_hwdev.c
> @@ -529,7 +529,7 @@ static int hinic_vf_rx_tx_flush(struct hinic_hwdev *hwdev)
>  
>  	err = hinic_reinit_cmdq_ctxts(hwdev);
>  	if (err)
> -		PMD_DRV_LOG(WARNING, "Reinit cmdq failed");
> +		PMD_DRV_LOG(WARNING, "Reinit cmdq failed when vf flush");
>  
>  	return err;
>  }
> @@ -587,7 +587,7 @@ static int hinic_pf_rx_tx_flush(struct hinic_hwdev *hwdev)
>  
>  	err = hinic_reinit_cmdq_ctxts(hwdev);
>  	if (err)
> -		PMD_DRV_LOG(WARNING, "Reinit cmdq failed");
> +		PMD_DRV_LOG(WARNING, "Reinit cmdq failed when pf flush");
>  
>  	return 0;
>  }
> diff --git a/drivers/net/hinic/base/hinic_pmd_mgmt.c b/drivers/net/hinic/base/hinic_pmd_mgmt.c
> index addc9d2..06c9b68 100644
> --- a/drivers/net/hinic/base/hinic_pmd_mgmt.c
> +++ b/drivers/net/hinic/base/hinic_pmd_mgmt.c
> @@ -248,6 +248,19 @@ static void free_msg_buf(struct hinic_msg_pf_to_mgmt *pf_to_mgmt)
>  	free_recv_msg(&pf_to_mgmt->recv_msg_from_mgmt);
>  }
>  
> +static int hinic_get_mgmt_channel_status(void *hwdev)
> +{
> +	struct hinic_hwif *hwif = ((struct hinic_hwdev *)hwdev)->hwif;
> +	u32 val;
> +
> +	if (hinic_func_type((struct hinic_hwdev *)hwdev) == TYPE_VF)
> +		return false;
> +
> +	val = hinic_hwif_read_reg(hwif, HINIC_ICPL_RESERVD_ADDR);
> +
> +	return HINIC_GET_MGMT_CHANNEL_STATUS(val, MGMT_CHANNEL_STATUS);
> +}
> +
>  /**
>   * send_msg_to_mgmt_async - send async message
>   * @pf_to_mgmt: PF to MGMT channel
> @@ -309,6 +322,14 @@ static int send_msg_to_mgmt_sync(struct hinic_msg_pf_to_mgmt *pf_to_mgmt,
>  	u64 header;
>  	u16 cmd_size = mgmt_msg_len(msg_len);
>  
> +	/* If fw is hot active, return failed */
> +	if (hinic_get_mgmt_channel_status(pf_to_mgmt->hwdev)) {
> +		if (mod == HINIC_MOD_COMM || mod == HINIC_MOD_L2NIC)
> +			return HINIC_DEV_BUSY_ACTIVE_FW;
> +		else
> +			return -EBUSY;
> +	}
> +
>  	if (direction == HINIC_MSG_RESPONSE)
>  		prepare_header(pf_to_mgmt, &header, msg_len, mod, ack_type,
>  			       direction, cmd, resp_msg_id);
> @@ -449,7 +470,7 @@ static void hinic_pf_to_mgmt_free(struct hinic_hwdev *hwdev)
>  			       recv_msg->msg_len);
>  			*out_size = recv_msg->msg_len;
>  		} else {
> -			PMD_DRV_LOG(ERR, "Mgmt rsp's msg len: %u overflow.",
> +			PMD_DRV_LOG(ERR, "Mgmt rsp's msg len:%u overflow.",
>  				recv_msg->msg_len);
>  			err = -ERANGE;
>  		}
> @@ -462,19 +483,6 @@ static void hinic_pf_to_mgmt_free(struct hinic_hwdev *hwdev)
>  	return err;
>  }
>  
> -static int hinic_get_mgmt_channel_status(void *hwdev)
> -{
> -	struct hinic_hwif *hwif = ((struct hinic_hwdev *)hwdev)->hwif;
> -	u32 val;
> -
> -	if (hinic_func_type((struct hinic_hwdev *)hwdev) == TYPE_VF)
> -		return false;
> -
> -	val = hinic_hwif_read_reg(hwif, HINIC_ICPL_RESERVD_ADDR);
> -
> -	return HINIC_GET_MGMT_CHANNEL_STATUS(val, MGMT_CHANNEL_STATUS);
> -}
> -
>  int hinic_msg_to_mgmt_sync(void *hwdev, enum hinic_mod_type mod, u8 cmd,
>  			   void *buf_in, u16 in_size,
>  			   void *buf_out, u16 *out_size, u32 timeout)
> @@ -484,10 +492,6 @@ int hinic_msg_to_mgmt_sync(void *hwdev, enum hinic_mod_type mod, u8 cmd,
>  	if (!hwdev || in_size > HINIC_MSG_TO_MGMT_MAX_LEN)
>  		return -EINVAL;
>  
> -	/* If status is hot upgrading, don't send message to mgmt */
> -	if (hinic_get_mgmt_channel_status(hwdev))
> -		return -EPERM;
> -
>  	if (hinic_func_type(hwdev) == TYPE_VF) {
>  		rc = hinic_mbox_to_pf(hwdev, mod, cmd, buf_in, in_size,
>  					buf_out, out_size, timeout);
> diff --git a/drivers/net/hinic/base/hinic_pmd_mgmt.h b/drivers/net/hinic/base/hinic_pmd_mgmt.h
> index cc18843..52b319e 100644
> --- a/drivers/net/hinic/base/hinic_pmd_mgmt.h
> +++ b/drivers/net/hinic/base/hinic_pmd_mgmt.h
> @@ -34,6 +34,8 @@
>  #define HINIC_MSG_HEADER_P2P_IDX_MASK				0xF
>  #define HINIC_MSG_HEADER_MSG_ID_MASK				0x3FF
>  
> +#define HINIC_DEV_BUSY_ACTIVE_FW				0xFE
> +
>  #define HINIC_MSG_HEADER_GET(val, member)			\
>  		(((val) >> HINIC_MSG_HEADER_##member##_SHIFT) & \
>  		HINIC_MSG_HEADER_##member##_MASK)
> diff --git a/drivers/net/hinic/base/hinic_pmd_nicio.c b/drivers/net/hinic/base/hinic_pmd_nicio.c
> index fd34b03..60c4e14 100644
> --- a/drivers/net/hinic/base/hinic_pmd_nicio.c
> +++ b/drivers/net/hinic/base/hinic_pmd_nicio.c
> @@ -537,7 +537,7 @@ int hinic_init_qp_ctxts(struct hinic_hwdev *hwdev)
>  	if (hwdev->cmdqs->status & HINIC_CMDQ_SET_FAIL) {
>  		err = hinic_reinit_cmdq_ctxts(hwdev);
>  		if (err) {
> -			PMD_DRV_LOG(ERR, "Reinit cmdq context failed, rc: %d",
> +			PMD_DRV_LOG(ERR, "Reinit cmdq context failed when dev start, err: %d",
>  				err);
>  			return err;
>  		}
> diff --git a/drivers/net/hinic/hinic_pmd_ethdev.c b/drivers/net/hinic/hinic_pmd_ethdev.c
> index 23724a0..239a78c 100644
> --- a/drivers/net/hinic/hinic_pmd_ethdev.c
> +++ b/drivers/net/hinic/hinic_pmd_ethdev.c
> @@ -1862,11 +1862,6 @@ static int hinic_flow_ctrl_get(struct rte_eth_dev *dev,
>  	else
>  		fc_conf->mode = RTE_FC_NONE;
>  
> -	PMD_DRV_LOG(INFO, "Get pause options, tx: %s, rx: %s, auto: %s\n",
> -		nic_pause.tx_pause ? "on" : "off",
> -		nic_pause.rx_pause ? "on" : "off",
> -		nic_pause.auto_neg ? "on" : "off");
> -
>  	return 0;
>  }
>  
> @@ -1900,7 +1895,7 @@ static int hinic_flow_ctrl_set(struct rte_eth_dev *dev,
>  	nic_dev->nic_pause.rx_pause = nic_pause.rx_pause;
>  	nic_dev->nic_pause.tx_pause = nic_pause.tx_pause;
>  
> -	PMD_DRV_LOG(INFO, "Get pause options, tx: %s, rx: %s, auto: %s\n",
> +	PMD_DRV_LOG(INFO, "Set pause options, tx: %s, rx: %s, auto: %s\n",
>  		nic_pause.tx_pause ? "on" : "off",
>  		nic_pause.rx_pause ? "on" : "off",
>  		nic_pause.auto_neg ? "on" : "off");
> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [dpdk-dev] [PATCH v3 0/2] bug fixes
@ 2020-04-01  9:29 Xiaoyun wang
  2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem Xiaoyun wang
  2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 2/2] net/hinic/base: optimize log style Xiaoyun wang
  0 siblings, 2 replies; 6+ messages in thread
From: Xiaoyun wang @ 2020-04-01  9:29 UTC (permalink / raw)
  To: dev
  Cc: ferruh.yigit, bluca, luoxianjun, luoxingyu, zhouguoyang,
	xuanziyang2, shahar.belkar, yin.yinshi, Xiaoyun wang

This patch fixes PF firmware hotactive problem, and optimize
log style. 

--
v2->v3:
  - fix-FW-hotactive-problem
  - optimize-log-style
  
v1->v2:
  - Fix LRO problems
  - Fix hotupdate firmware problem
  - Optimize doorbell area initialization 
  - Remove 40GE Mezz card id
  - Add Fdir filter type
  - Optimize log files
  - Support pause flow control

v1:
  - Allocate IO memory with socketid


Xiaoyun wang (2):
  net/hinic/base: fix FW hotactive problem
  net/hinic/base: optimize log style

 drivers/net/hinic/base/hinic_pmd_cmdq.c   |  7 ++++--
 drivers/net/hinic/base/hinic_pmd_hwdev.c  |  8 +++----
 drivers/net/hinic/base/hinic_pmd_hwif.c   |  4 ++--
 drivers/net/hinic/base/hinic_pmd_mgmt.c   | 38 +++++++++++++++++--------------
 drivers/net/hinic/base/hinic_pmd_mgmt.h   |  2 ++
 drivers/net/hinic/base/hinic_pmd_niccfg.c |  3 +--
 drivers/net/hinic/base/hinic_pmd_nicio.c  |  2 +-
 drivers/net/hinic/hinic_pmd_ethdev.c      | 15 ++++--------
 drivers/net/hinic/hinic_pmd_flow.c        |  5 ++--
 9 files changed, 43 insertions(+), 41 deletions(-)

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem
  2020-04-01  9:29 [dpdk-dev] [PATCH v3 0/2] bug fixes Xiaoyun wang
@ 2020-04-01  9:30 ` Xiaoyun wang
  2020-04-01  9:28   ` Kevin Traynor
  2020-04-03 17:24   ` Ferruh Yigit
  2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 2/2] net/hinic/base: optimize log style Xiaoyun wang
  1 sibling, 2 replies; 6+ messages in thread
From: Xiaoyun wang @ 2020-04-01  9:30 UTC (permalink / raw)
  To: dev
  Cc: ferruh.yigit, bluca, luoxianjun, luoxingyu, zhouguoyang,
	xuanziyang2, shahar.belkar, yin.yinshi, Xiaoyun wang

When PF detects FW is hotactive, up returns HINIC_DEV_BUSY_ACTIVE_FW for
pf driver, when cmdq reinit at txrx flush, cmdq will fail, driver should
reinit the cmdq when port start.

Fixes: d9ce1917941c ("net/hinic/base: add hardware operation")
Signed-off-by: Xiaoyun wang <cloud.wangxiaoyun@huawei.com>
---
 drivers/net/hinic/base/hinic_pmd_cmdq.c  |  7 ++++--
 drivers/net/hinic/base/hinic_pmd_hwdev.c |  4 ++--
 drivers/net/hinic/base/hinic_pmd_mgmt.c  | 40 ++++++++++++++++++--------------
 drivers/net/hinic/base/hinic_pmd_mgmt.h  |  2 ++
 drivers/net/hinic/base/hinic_pmd_nicio.c |  2 +-
 drivers/net/hinic/hinic_pmd_ethdev.c     |  7 +-----
 6 files changed, 33 insertions(+), 29 deletions(-)

diff --git a/drivers/net/hinic/base/hinic_pmd_cmdq.c b/drivers/net/hinic/base/hinic_pmd_cmdq.c
index 685498e..2e98b9c 100644
--- a/drivers/net/hinic/base/hinic_pmd_cmdq.c
+++ b/drivers/net/hinic/base/hinic_pmd_cmdq.c
@@ -440,9 +440,12 @@ static int hinic_set_cmdq_ctxts(struct hinic_hwdev *hwdev)
 					     cmdq_ctxt, in_size, NULL,
 					     NULL, 0);
 		if (err) {
-			if (err == HINIC_MBOX_PF_BUSY_ACTIVE_FW)
+			if (err == HINIC_MBOX_PF_BUSY_ACTIVE_FW ||
+				err == HINIC_DEV_BUSY_ACTIVE_FW) {
 				cmdqs->status |= HINIC_CMDQ_SET_FAIL;
-			PMD_DRV_LOG(ERR, "Set cmdq ctxt failed");
+				PMD_DRV_LOG(ERR, "PF or VF fw is hot active");
+			}
+			PMD_DRV_LOG(ERR, "Set cmdq ctxt failed, err: %d", err);
 			return -EFAULT;
 		}
 	}
diff --git a/drivers/net/hinic/base/hinic_pmd_hwdev.c b/drivers/net/hinic/base/hinic_pmd_hwdev.c
index cf2a970..fc11ecd 100644
--- a/drivers/net/hinic/base/hinic_pmd_hwdev.c
+++ b/drivers/net/hinic/base/hinic_pmd_hwdev.c
@@ -529,7 +529,7 @@ static int hinic_vf_rx_tx_flush(struct hinic_hwdev *hwdev)
 
 	err = hinic_reinit_cmdq_ctxts(hwdev);
 	if (err)
-		PMD_DRV_LOG(WARNING, "Reinit cmdq failed");
+		PMD_DRV_LOG(WARNING, "Reinit cmdq failed when vf flush");
 
 	return err;
 }
@@ -587,7 +587,7 @@ static int hinic_pf_rx_tx_flush(struct hinic_hwdev *hwdev)
 
 	err = hinic_reinit_cmdq_ctxts(hwdev);
 	if (err)
-		PMD_DRV_LOG(WARNING, "Reinit cmdq failed");
+		PMD_DRV_LOG(WARNING, "Reinit cmdq failed when pf flush");
 
 	return 0;
 }
diff --git a/drivers/net/hinic/base/hinic_pmd_mgmt.c b/drivers/net/hinic/base/hinic_pmd_mgmt.c
index addc9d2..06c9b68 100644
--- a/drivers/net/hinic/base/hinic_pmd_mgmt.c
+++ b/drivers/net/hinic/base/hinic_pmd_mgmt.c
@@ -248,6 +248,19 @@ static void free_msg_buf(struct hinic_msg_pf_to_mgmt *pf_to_mgmt)
 	free_recv_msg(&pf_to_mgmt->recv_msg_from_mgmt);
 }
 
+static int hinic_get_mgmt_channel_status(void *hwdev)
+{
+	struct hinic_hwif *hwif = ((struct hinic_hwdev *)hwdev)->hwif;
+	u32 val;
+
+	if (hinic_func_type((struct hinic_hwdev *)hwdev) == TYPE_VF)
+		return false;
+
+	val = hinic_hwif_read_reg(hwif, HINIC_ICPL_RESERVD_ADDR);
+
+	return HINIC_GET_MGMT_CHANNEL_STATUS(val, MGMT_CHANNEL_STATUS);
+}
+
 /**
  * send_msg_to_mgmt_async - send async message
  * @pf_to_mgmt: PF to MGMT channel
@@ -309,6 +322,14 @@ static int send_msg_to_mgmt_sync(struct hinic_msg_pf_to_mgmt *pf_to_mgmt,
 	u64 header;
 	u16 cmd_size = mgmt_msg_len(msg_len);
 
+	/* If fw is hot active, return failed */
+	if (hinic_get_mgmt_channel_status(pf_to_mgmt->hwdev)) {
+		if (mod == HINIC_MOD_COMM || mod == HINIC_MOD_L2NIC)
+			return HINIC_DEV_BUSY_ACTIVE_FW;
+		else
+			return -EBUSY;
+	}
+
 	if (direction == HINIC_MSG_RESPONSE)
 		prepare_header(pf_to_mgmt, &header, msg_len, mod, ack_type,
 			       direction, cmd, resp_msg_id);
@@ -449,7 +470,7 @@ static void hinic_pf_to_mgmt_free(struct hinic_hwdev *hwdev)
 			       recv_msg->msg_len);
 			*out_size = recv_msg->msg_len;
 		} else {
-			PMD_DRV_LOG(ERR, "Mgmt rsp's msg len: %u overflow.",
+			PMD_DRV_LOG(ERR, "Mgmt rsp's msg len:%u overflow.",
 				recv_msg->msg_len);
 			err = -ERANGE;
 		}
@@ -462,19 +483,6 @@ static void hinic_pf_to_mgmt_free(struct hinic_hwdev *hwdev)
 	return err;
 }
 
-static int hinic_get_mgmt_channel_status(void *hwdev)
-{
-	struct hinic_hwif *hwif = ((struct hinic_hwdev *)hwdev)->hwif;
-	u32 val;
-
-	if (hinic_func_type((struct hinic_hwdev *)hwdev) == TYPE_VF)
-		return false;
-
-	val = hinic_hwif_read_reg(hwif, HINIC_ICPL_RESERVD_ADDR);
-
-	return HINIC_GET_MGMT_CHANNEL_STATUS(val, MGMT_CHANNEL_STATUS);
-}
-
 int hinic_msg_to_mgmt_sync(void *hwdev, enum hinic_mod_type mod, u8 cmd,
 			   void *buf_in, u16 in_size,
 			   void *buf_out, u16 *out_size, u32 timeout)
@@ -484,10 +492,6 @@ int hinic_msg_to_mgmt_sync(void *hwdev, enum hinic_mod_type mod, u8 cmd,
 	if (!hwdev || in_size > HINIC_MSG_TO_MGMT_MAX_LEN)
 		return -EINVAL;
 
-	/* If status is hot upgrading, don't send message to mgmt */
-	if (hinic_get_mgmt_channel_status(hwdev))
-		return -EPERM;
-
 	if (hinic_func_type(hwdev) == TYPE_VF) {
 		rc = hinic_mbox_to_pf(hwdev, mod, cmd, buf_in, in_size,
 					buf_out, out_size, timeout);
diff --git a/drivers/net/hinic/base/hinic_pmd_mgmt.h b/drivers/net/hinic/base/hinic_pmd_mgmt.h
index cc18843..52b319e 100644
--- a/drivers/net/hinic/base/hinic_pmd_mgmt.h
+++ b/drivers/net/hinic/base/hinic_pmd_mgmt.h
@@ -34,6 +34,8 @@
 #define HINIC_MSG_HEADER_P2P_IDX_MASK				0xF
 #define HINIC_MSG_HEADER_MSG_ID_MASK				0x3FF
 
+#define HINIC_DEV_BUSY_ACTIVE_FW				0xFE
+
 #define HINIC_MSG_HEADER_GET(val, member)			\
 		(((val) >> HINIC_MSG_HEADER_##member##_SHIFT) & \
 		HINIC_MSG_HEADER_##member##_MASK)
diff --git a/drivers/net/hinic/base/hinic_pmd_nicio.c b/drivers/net/hinic/base/hinic_pmd_nicio.c
index fd34b03..60c4e14 100644
--- a/drivers/net/hinic/base/hinic_pmd_nicio.c
+++ b/drivers/net/hinic/base/hinic_pmd_nicio.c
@@ -537,7 +537,7 @@ int hinic_init_qp_ctxts(struct hinic_hwdev *hwdev)
 	if (hwdev->cmdqs->status & HINIC_CMDQ_SET_FAIL) {
 		err = hinic_reinit_cmdq_ctxts(hwdev);
 		if (err) {
-			PMD_DRV_LOG(ERR, "Reinit cmdq context failed, rc: %d",
+			PMD_DRV_LOG(ERR, "Reinit cmdq context failed when dev start, err: %d",
 				err);
 			return err;
 		}
diff --git a/drivers/net/hinic/hinic_pmd_ethdev.c b/drivers/net/hinic/hinic_pmd_ethdev.c
index 23724a0..239a78c 100644
--- a/drivers/net/hinic/hinic_pmd_ethdev.c
+++ b/drivers/net/hinic/hinic_pmd_ethdev.c
@@ -1862,11 +1862,6 @@ static int hinic_flow_ctrl_get(struct rte_eth_dev *dev,
 	else
 		fc_conf->mode = RTE_FC_NONE;
 
-	PMD_DRV_LOG(INFO, "Get pause options, tx: %s, rx: %s, auto: %s\n",
-		nic_pause.tx_pause ? "on" : "off",
-		nic_pause.rx_pause ? "on" : "off",
-		nic_pause.auto_neg ? "on" : "off");
-
 	return 0;
 }
 
@@ -1900,7 +1895,7 @@ static int hinic_flow_ctrl_set(struct rte_eth_dev *dev,
 	nic_dev->nic_pause.rx_pause = nic_pause.rx_pause;
 	nic_dev->nic_pause.tx_pause = nic_pause.tx_pause;
 
-	PMD_DRV_LOG(INFO, "Get pause options, tx: %s, rx: %s, auto: %s\n",
+	PMD_DRV_LOG(INFO, "Set pause options, tx: %s, rx: %s, auto: %s\n",
 		nic_pause.tx_pause ? "on" : "off",
 		nic_pause.rx_pause ? "on" : "off",
 		nic_pause.auto_neg ? "on" : "off");
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [dpdk-dev] [PATCH v3 2/2] net/hinic/base: optimize log style
  2020-04-01  9:29 [dpdk-dev] [PATCH v3 0/2] bug fixes Xiaoyun wang
  2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem Xiaoyun wang
@ 2020-04-01  9:30 ` Xiaoyun wang
  1 sibling, 0 replies; 6+ messages in thread
From: Xiaoyun wang @ 2020-04-01  9:30 UTC (permalink / raw)
  To: dev
  Cc: ferruh.yigit, bluca, luoxianjun, luoxingyu, zhouguoyang,
	xuanziyang2, shahar.belkar, yin.yinshi, Xiaoyun wang

The patch adds space between descriptors and variables in log files.

Signed-off-by: Xiaoyun wang <cloud.wangxiaoyun@huawei.com>
---
 drivers/net/hinic/base/hinic_pmd_hwdev.c  | 4 ++--
 drivers/net/hinic/base/hinic_pmd_hwif.c   | 4 ++--
 drivers/net/hinic/base/hinic_pmd_mgmt.c   | 2 +-
 drivers/net/hinic/base/hinic_pmd_niccfg.c | 3 +--
 drivers/net/hinic/hinic_pmd_ethdev.c      | 8 ++++----
 drivers/net/hinic/hinic_pmd_flow.c        | 5 ++---
 6 files changed, 12 insertions(+), 14 deletions(-)

diff --git a/drivers/net/hinic/base/hinic_pmd_hwdev.c b/drivers/net/hinic/base/hinic_pmd_hwdev.c
index fc11ecd..cc42076 100644
--- a/drivers/net/hinic/base/hinic_pmd_hwdev.c
+++ b/drivers/net/hinic/base/hinic_pmd_hwdev.c
@@ -298,7 +298,7 @@ void dma_pool_destroy(struct dma_pool *pool)
 		return;
 
 	if (rte_atomic32_read(&pool->inuse) != 0) {
-		PMD_DRV_LOG(ERR, "Leak memory, dma_pool:%s, inuse_count:%d",
+		PMD_DRV_LOG(ERR, "Leak memory, dma_pool: %s, inuse_count: %d",
 			    pool->name, rte_atomic32_read(&pool->inuse));
 	}
 
@@ -1068,7 +1068,7 @@ int hinic_l2nic_reset(struct hinic_hwdev *hwdev)
 		watchdog_info->is_overflow, watchdog_info->stack_top,
 		watchdog_info->stack_bottom);
 
-	PMD_DRV_LOG(ERR, "Mgmt pc: 0x%08x, lr: 0x%08x, cpsr:0x%08x",
+	PMD_DRV_LOG(ERR, "Mgmt pc: 0x%08x, lr: 0x%08x, cpsr: 0x%08x",
 		watchdog_info->pc, watchdog_info->lr, watchdog_info->cpsr);
 
 	PMD_DRV_LOG(ERR, "Mgmt register info");
diff --git a/drivers/net/hinic/base/hinic_pmd_hwif.c b/drivers/net/hinic/base/hinic_pmd_hwif.c
index 0fced5b..63fba0d 100644
--- a/drivers/net/hinic/base/hinic_pmd_hwif.c
+++ b/drivers/net/hinic/base/hinic_pmd_hwif.c
@@ -450,8 +450,8 @@ static void hinic_parse_hwif_attr(struct hinic_hwdev *hwdev)
 	struct hinic_hwif *hwif = hwdev->hwif;
 
 	PMD_DRV_LOG(INFO, "Device %s hwif attribute:", hwdev->pcidev_hdl->name);
-	PMD_DRV_LOG(INFO, "func_idx:%u, p2p_idx:%u, pciintf_idx:%u, "
-		    "vf_in_pf:%u, ppf_idx:%u, global_vf_id:%u, func_type:%u",
+	PMD_DRV_LOG(INFO, "func_idx: %u, p2p_idx: %u, pciintf_idx: %u, "
+		    "vf_in_pf: %u, ppf_idx: %u, global_vf_id: %u, func_type: %u",
 		    hwif->attr.func_global_idx,
 		    hwif->attr.port_to_port_idx, hwif->attr.pci_intf_idx,
 		    hwif->attr.vf_in_pf, hwif->attr.ppf_idx,
diff --git a/drivers/net/hinic/base/hinic_pmd_mgmt.c b/drivers/net/hinic/base/hinic_pmd_mgmt.c
index 06c9b68..94bc45f 100644
--- a/drivers/net/hinic/base/hinic_pmd_mgmt.c
+++ b/drivers/net/hinic/base/hinic_pmd_mgmt.c
@@ -470,7 +470,7 @@ static void hinic_pf_to_mgmt_free(struct hinic_hwdev *hwdev)
 			       recv_msg->msg_len);
 			*out_size = recv_msg->msg_len;
 		} else {
-			PMD_DRV_LOG(ERR, "Mgmt rsp's msg len:%u overflow.",
+			PMD_DRV_LOG(ERR, "Mgmt rsp's msg len: %u overflow.",
 				recv_msg->msg_len);
 			err = -ERANGE;
 		}
diff --git a/drivers/net/hinic/base/hinic_pmd_niccfg.c b/drivers/net/hinic/base/hinic_pmd_niccfg.c
index 0899a9c..c5663df 100644
--- a/drivers/net/hinic/base/hinic_pmd_niccfg.c
+++ b/drivers/net/hinic/base/hinic_pmd_niccfg.c
@@ -1610,8 +1610,7 @@ int hinic_set_link_status_follow(void *hwdev,
 		return 0;
 
 	if (status >= HINIC_LINK_FOLLOW_STATUS_MAX) {
-		PMD_DRV_LOG(ERR,
-			"Invalid link follow status: %d", status);
+		PMD_DRV_LOG(ERR, "Invalid link follow status: %d", status);
 		return -EINVAL;
 	}
 
diff --git a/drivers/net/hinic/hinic_pmd_ethdev.c b/drivers/net/hinic/hinic_pmd_ethdev.c
index 239a78c..4091cf1 100644
--- a/drivers/net/hinic/hinic_pmd_ethdev.c
+++ b/drivers/net/hinic/hinic_pmd_ethdev.c
@@ -477,7 +477,7 @@ static int hinic_rx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx,
 	/* alloc rx_cqe and prepare rq_wqe */
 	rc = hinic_setup_rx_resources(rxq);
 	if (rc) {
-		PMD_DRV_LOG(ERR, "Setup rxq[%d] rx_resources failed, dev_name:%s",
+		PMD_DRV_LOG(ERR, "Setup rxq[%d] rx_resources failed, dev_name: %s",
 			    queue_idx, dev->data->name);
 		goto setup_rx_res_err;
 	}
@@ -1014,7 +1014,7 @@ static int hinic_dev_start(struct rte_eth_dev *dev)
 	/* init txq and rxq context */
 	rc = hinic_init_qp_ctxts(nic_dev->hwdev);
 	if (rc) {
-		PMD_DRV_LOG(ERR, "Initialize qp context failed, dev_name:%s",
+		PMD_DRV_LOG(ERR, "Initialize qp context failed, dev_name: %s",
 			    name);
 		goto init_qp_fail;
 	}
@@ -1056,7 +1056,7 @@ static int hinic_dev_start(struct rte_eth_dev *dev)
 	/* open physical port and start packet receiving */
 	rc = hinic_set_port_enable(nic_dev->hwdev, true);
 	if (rc) {
-		PMD_DRV_LOG(ERR, "Enable physical port failed, dev_name:%s",
+		PMD_DRV_LOG(ERR, "Enable physical port failed, dev_name: %s",
 			    name);
 		goto en_port_fail;
 	}
@@ -1203,7 +1203,7 @@ static void hinic_dev_stop(struct rte_eth_dev *dev)
 
 	rc = hinic_set_vport_enable(nic_dev->hwdev, false);
 	if (rc)
-		PMD_DRV_LOG(WARNING, "Disable vport failed, error: %d, dev_name:%s, port_id:%d",
+		PMD_DRV_LOG(WARNING, "Disable vport failed, error: %d, dev_name: %s, port_id: %d",
 			  rc, name, port_id);
 
 	/* Clear recorded link status */
diff --git a/drivers/net/hinic/hinic_pmd_flow.c b/drivers/net/hinic/hinic_pmd_flow.c
index c1f86ef..e620df0 100644
--- a/drivers/net/hinic/hinic_pmd_flow.c
+++ b/drivers/net/hinic/hinic_pmd_flow.c
@@ -2285,8 +2285,7 @@ static int hinic_add_del_ntuple_filter(struct rte_eth_dev *dev,
 			case RTE_ETHER_TYPE_SLOW:
 				(void)hinic_clear_fdir_tcam(nic_dev->hwdev,
 								TCAM_PKT_LACP);
-				PMD_DRV_LOG(INFO,
-					"Del lacp tcam succeed");
+				PMD_DRV_LOG(INFO, "Del lacp tcam succeed");
 				break;
 			default:
 				break;
@@ -2935,7 +2934,7 @@ static int hinic_flow_destroy(struct rte_eth_dev *dev, struct rte_flow *flow,
 		}
 		break;
 	default:
-		PMD_DRV_LOG(WARNING, "Filter type (%d) not supported",
+		PMD_DRV_LOG(WARNING, "Filter type (%d) is not supported",
 			filter_type);
 		ret = -EINVAL;
 		break;
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem
  2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem Xiaoyun wang
  2020-04-01  9:28   ` Kevin Traynor
@ 2020-04-03 17:24   ` Ferruh Yigit
  2020-04-10  8:40     ` Wangxiaoyun (Cloud)
  1 sibling, 1 reply; 6+ messages in thread
From: Ferruh Yigit @ 2020-04-03 17:24 UTC (permalink / raw)
  To: Xiaoyun wang, dev
  Cc: bluca, luoxianjun, luoxingyu, zhouguoyang, xuanziyang2,
	shahar.belkar, yin.yinshi

On 4/1/2020 10:30 AM, Xiaoyun wang wrote:
> When PF detects FW is hotactive, up returns HINIC_DEV_BUSY_ACTIVE_FW for

Hi Xiaoyun,

What is 'hotactive'? "hot active"? Does it mean FW busy?

> pf driver, when cmdq reinit at txrx flush, cmdq will fail, driver should
> reinit the cmdq when port start.

Can you please rephrase above message to clarify it?

> 
> Fixes: d9ce1917941c ("net/hinic/base: add hardware operation")
> Signed-off-by: Xiaoyun wang <cloud.wangxiaoyun@huawei.com>

<...>


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem
  2020-04-03 17:24   ` Ferruh Yigit
@ 2020-04-10  8:40     ` Wangxiaoyun (Cloud)
  0 siblings, 0 replies; 6+ messages in thread
From: Wangxiaoyun (Cloud) @ 2020-04-10  8:40 UTC (permalink / raw)
  To: Ferruh Yigit, dev
  Cc: bluca, luoxianjun, luoxingyu, zhouguoyang, xuanziyang2,
	shahar.belkar, yin.yinshi

Hi Ferruch,
     I will upstream a new patch to clarify the comments.
Best regards
xiaoyun wang

在 2020/4/4 1:24, Ferruh Yigit 写道:
> On 4/1/2020 10:30 AM, Xiaoyun wang wrote:
>> When PF detects FW is hotactive, up returns HINIC_DEV_BUSY_ACTIVE_FW for
> 
> Hi Xiaoyun,
> 
> What is 'hotactive'? "hot active"? Does it mean FW busy?
> 
>> pf driver, when cmdq reinit at txrx flush, cmdq will fail, driver should
>> reinit the cmdq when port start.
> 
> Can you please rephrase above message to clarify it?
> 
>>
>> Fixes: d9ce1917941c ("net/hinic/base: add hardware operation")
>> Signed-off-by: Xiaoyun wang <cloud.wangxiaoyun@huawei.com>
> 
> <...>
> 
> 
> .
> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-04-10  8:40 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-01  9:29 [dpdk-dev] [PATCH v3 0/2] bug fixes Xiaoyun wang
2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 1/2] net/hinic/base: fix FW hotactive problem Xiaoyun wang
2020-04-01  9:28   ` Kevin Traynor
2020-04-03 17:24   ` Ferruh Yigit
2020-04-10  8:40     ` Wangxiaoyun (Cloud)
2020-04-01  9:30 ` [dpdk-dev] [PATCH v3 2/2] net/hinic/base: optimize log style Xiaoyun wang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.