From 64937c68ce277ae3f9e328ea3eb9eb3c69d57846 Mon Sep 17 00:00:00 2001 From: Jun Wang Date: Fri, 12 Jul 2024 19:30:47 +0800 Subject: [PATCH] net/e1000: do not update link status in secondary process The code to update link status is not safe in secondary process. If called from secondary it will crash, example from dumpcap: /dpdk/app/dpdk-dumpcap -i 0000:00:04.0 File: /tmp/dpdk-dumpcap_0_0000:00:04.0_20240723020203.pcapng Segmentation fault (core dumped) Fixes: 805803445a02 ("e1000: support EM devices (also known as e1000/e1000e)") Cc: stable@dpdk.org Signed-off-by: Jun Wang Acked-by: Bruce Richardson --- drivers/net/e1000/em_ethdev.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/e1000/em_ethdev.c b/drivers/net/e1000/em_ethdev.c index c5a4dec6930..f6875b07627 100644 --- a/drivers/net/e1000/em_ethdev.c +++ b/drivers/net/e1000/em_ethdev.c @@ -1136,6 +1136,9 @@ eth_em_link_update(struct rte_eth_dev *dev, int wait_to_complete) struct rte_eth_link link; int link_up, count; + if (rte_eal_process_type() != RTE_PROC_PRIMARY) + return -1; + link_up = 0; hw->mac.get_link_status = 1;