From mboxrd@z Thu Jan 1 00:00:00 1970 From: wang wei Subject: [PATCH] drivers/net/bonding: fix updating the slave link status Date: Tue, 25 Apr 2017 14:30:49 +0800 Message-ID: <20170425063049.4705-1-lnykww@gmail.com> To: dev@dpdk.org Return-path: Received: from mail-pg0-f65.google.com (mail-pg0-f65.google.com [74.125.83.65]) by dpdk.org (Postfix) with ESMTP id 129732BA2 for ; Tue, 25 Apr 2017 08:31:00 +0200 (CEST) Received: by mail-pg0-f65.google.com with SMTP id g2so8816749pge.2 for ; Mon, 24 Apr 2017 23:31:00 -0700 (PDT) Received: from wangweideMacBook-Pro-2.local.info ([103.29.140.57]) by smtp.gmail.com with ESMTPSA id h89sm34108326pfh.45.2017.04.24.23.30.58 for (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 24 Apr 2017 23:30:59 -0700 (PDT) List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" we need to update dev->data->dev_link before handling lsc event. Otherwise it will still have the initial value after the startup of the program before interrupt callback was executed. Signed-off-by: wang wei --- drivers/net/bonding/rte_eth_bond_pmd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c index c94071ffb..57b1012c4 100644 --- a/drivers/net/bonding/rte_eth_bond_pmd.c +++ b/drivers/net/bonding/rte_eth_bond_pmd.c @@ -1435,9 +1435,11 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev, } /* If lsc interrupt is set, check initial slave's link status */ - if (slave_eth_dev->data->dev_flags & RTE_ETH_DEV_INTR_LSC) + if (slave_eth_dev->data->dev_flags & RTE_ETH_DEV_INTR_LSC) { + slave_eth_dev->dev_ops->link_update(slave_eth_dev, 0); bond_ethdev_lsc_event_callback(slave_eth_dev->data->port_id, RTE_ETH_EVENT_INTR_LSC, &bonded_eth_dev->data->port_id); + } return 0; } -- 2.11.0 (Apple Git-81)