[2/9] net/txgbe: fix interrupt enable mask

Message ID 20230614023429.1002071-3-jiawenwu@trustnetic.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series Wangxun bug fixes |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Jiawen Wu June 14, 2023, 2:34 a.m. UTC
  When using no LSC mode, GPIO interrupt can still cause
txgbe_dev_interrupt_delayed_handler() to be called, with
TXGBE_FLAG_NEED_LINK_UPDATE to be set. So add a LSC condition on
intr->mask_misc.

Fixes: 2fc745e6b606 ("net/txgbe: add interrupt operation")
Fixes: d3bb4a04eac1 ("net/txgbe: add SFP hotplug identification")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/txgbe/txgbe_ethdev.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Patch

diff --git a/drivers/net/txgbe/txgbe_ethdev.c b/drivers/net/txgbe/txgbe_ethdev.c
index a3d7461951..5eff1a766e 100644
--- a/drivers/net/txgbe/txgbe_ethdev.c
+++ b/drivers/net/txgbe/txgbe_ethdev.c
@@ -3232,7 +3232,8 @@  txgbe_dev_interrupt_delayed_handler(void *param)
 	}
 
 	/* restore original mask */
-	intr->mask_misc |= TXGBE_ICRMISC_LSC;
+	if (dev->data->dev_conf.intr_conf.lsc == 1)
+		intr->mask_misc |= TXGBE_ICRMISC_LSC;
 
 	intr->mask = intr->mask_orig;
 	intr->mask_orig = 0;