patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Ye Xiaolong <xiaolong.ye@intel.com>
To: Lunyuan Cui <lunyuanx.cui@intel.com>
Cc: dev@dpdk.org, Wenzhuo Lu <wenzhuo.lu@intel.com>, stable@dpdk.org
Subject: Re: [dpdk-stable] [dpdk-dev] [PATCH v3] net/e1000: fix link status update
Date: Mon, 18 Nov 2019 15:23:27 +0800	[thread overview]
Message-ID: <20191118072327.GH69793@intel.com> (raw)
In-Reply-To: <20191118145801.78186-1-lunyuanx.cui@intel.com>

Hi, wenzhuo

Could you help ack this patch if you are ok with this change?

Thanks,
Xiaolong

On 11/18, Lunyuan Cui wrote:
>Unassigned variable should not be used as judgment, and there
>is no need to update link status according to old link status.
>This patch fix the issue.
>
>Change the variable from link_check to link_up.
>
>Fixes: 80ba61115e77 ("net/e1000: use link status helper functions")
>Cc: stable@dpdk.org
>
>Signed-off-by: Lunyuan Cui <lunyuanx.cui@intel.com>
>---
>v3:
>* Change the variable from link_check to link_up.
>
>v2
>* Delete incorrect judgment
>---
> drivers/net/e1000/em_ethdev.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
>diff --git a/drivers/net/e1000/em_ethdev.c b/drivers/net/e1000/em_ethdev.c
>index 9a88b50b2..080cbe2df 100644
>--- a/drivers/net/e1000/em_ethdev.c
>+++ b/drivers/net/e1000/em_ethdev.c
>@@ -1121,9 +1121,9 @@ eth_em_link_update(struct rte_eth_dev *dev, int wait_to_complete)
> 	struct e1000_hw *hw =
> 		E1000_DEV_PRIVATE_TO_HW(dev->data->dev_private);
> 	struct rte_eth_link link;
>-	int link_check, count;
>+	int link_up, count;
> 
>-	link_check = 0;
>+	link_up = 0;
> 	hw->mac.get_link_status = 1;
> 
> 	/* possible wait-to-complete in up to 9 seconds */
>@@ -1133,31 +1133,31 @@ eth_em_link_update(struct rte_eth_dev *dev, int wait_to_complete)
> 		case e1000_media_type_copper:
> 			/* Do the work to read phy */
> 			e1000_check_for_link(hw);
>-			link_check = !hw->mac.get_link_status;
>+			link_up = !hw->mac.get_link_status;
> 			break;
> 
> 		case e1000_media_type_fiber:
> 			e1000_check_for_link(hw);
>-			link_check = (E1000_READ_REG(hw, E1000_STATUS) &
>+			link_up = (E1000_READ_REG(hw, E1000_STATUS) &
> 					E1000_STATUS_LU);
> 			break;
> 
> 		case e1000_media_type_internal_serdes:
> 			e1000_check_for_link(hw);
>-			link_check = hw->mac.serdes_has_link;
>+			link_up = hw->mac.serdes_has_link;
> 			break;
> 
> 		default:
> 			break;
> 		}
>-		if (link_check || wait_to_complete == 0)
>+		if (link_up || wait_to_complete == 0)
> 			break;
> 		rte_delay_ms(EM_LINK_UPDATE_CHECK_INTERVAL);
> 	}
> 	memset(&link, 0, sizeof(link));
> 
> 	/* Now we check if a transition has happened */
>-	if (link_check && (link.link_status == ETH_LINK_DOWN)) {
>+	if (link_up) {
> 		uint16_t duplex, speed;
> 		hw->mac.ops.get_link_up_info(hw, &speed, &duplex);
> 		link.link_duplex = (duplex == FULL_DUPLEX) ?
>@@ -1167,7 +1167,7 @@ eth_em_link_update(struct rte_eth_dev *dev, int wait_to_complete)
> 		link.link_status = ETH_LINK_UP;
> 		link.link_autoneg = !(dev->data->dev_conf.link_speeds &
> 				ETH_LINK_SPEED_FIXED);
>-	} else if (!link_check && (link.link_status == ETH_LINK_UP)) {
>+	} else {
> 		link.link_speed = ETH_SPEED_NUM_NONE;
> 		link.link_duplex = ETH_LINK_HALF_DUPLEX;
> 		link.link_status = ETH_LINK_DOWN;
>-- 
>2.17.1
>

  reply	other threads:[~2019-11-18  7:27 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-13 17:32 [dpdk-stable] [PATCH] " Cui LunyuanX
2019-11-14  6:41 ` [dpdk-stable] [dpdk-dev] " Ye Xiaolong
2019-11-15 14:48 ` [dpdk-stable] [PATCH v2] " Lunyuan Cui
2019-11-18  3:06   ` [dpdk-stable] [dpdk-dev] " Ye Xiaolong
2019-11-18  3:21     ` Cui, LunyuanX
2019-11-18  3:28       ` Ye Xiaolong
2019-11-18 14:58   ` [dpdk-stable] [PATCH v3] " Lunyuan Cui
2019-11-18  7:23     ` Ye Xiaolong [this message]
2019-11-19  6:43     ` Lu, Wenzhuo
2019-11-20  9:22     ` [dpdk-stable] [PATCH v4] " Lunyuan Cui
2019-11-26  2:24       ` [dpdk-stable] [dpdk-dev] " Ye Xiaolong
2019-11-26  2:04 ` [dpdk-stable] [PATCH] " Lu, Wenzhuo

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=20191118072327.GH69793@intel.com \
    --to=xiaolong.ye@intel.com \
    --cc=dev@dpdk.org \
    --cc=lunyuanx.cui@intel.com \
    --cc=stable@dpdk.org \
    --cc=wenzhuo.lu@intel.com \
    /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).