summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeyi Rong <leyi.rong@intel.com>2019-10-16 14:24:46 +0800
committerFerruh Yigit <ferruh.yigit@intel.com>2019-10-20 15:43:27 +0100
commit134d1a3a96f42786588ae7c18cae16edec3bc0b0 (patch)
tree4fea0308d6836351394d7400d4f02e678946c601
parentfa5555e45b0684be4869d5fffde07ce0c2f81c1e (diff)
downloaddpdk-next-net-intel-134d1a3a96f42786588ae7c18cae16edec3bc0b0.zip
dpdk-next-net-intel-134d1a3a96f42786588ae7c18cae16edec3bc0b0.tar.gz
dpdk-next-net-intel-134d1a3a96f42786588ae7c18cae16edec3bc0b0.tar.xz
net/ice: invoke callback when link status change
Needs to call _rte_eth_dev_callback_process to run registered callbacks when link status change. Fixes: cf911d90e366 ("net/ice: support link update") Cc: stable@dpdk.org Signed-off-by: Leyi Rong <leyi.rong@intel.com> Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
-rw-r--r--drivers/net/ice/ice_ethdev.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c
index b433ba8..dc4d1e6 100644
--- a/drivers/net/ice/ice_ethdev.c
+++ b/drivers/net/ice/ice_ethdev.c
@@ -1305,6 +1305,7 @@ ice_interrupt_handler(void *param)
uint8_t pf_num;
uint8_t event;
uint16_t queue;
+ int ret;
#ifdef ICE_LSE_SPT
uint32_t int_fw_ctl;
#endif
@@ -1332,7 +1333,10 @@ ice_interrupt_handler(void *param)
#else
if (oicr & PFINT_OICR_LINK_STAT_CHANGE_M) {
PMD_DRV_LOG(INFO, "OICR: link state change event");
- ice_link_update(dev, 0);
+ ret = ice_link_update(dev, 0);
+ if (!ret)
+ _rte_eth_dev_callback_process
+ (dev, RTE_ETH_EVENT_INTR_LSC, NULL);
}
#endif