[Public] HI,
Snipped Hi, You can create a simple setup with only running testpmd with primary and another testpmd with secondary and then see the results. No, the reason for the primary process termination could be close or shutdown (ctrl + c or ctrl + q) or any other. The reason is clear: "In secondary processes, accessing 'dev->data->dev_private' or &dev->data->mac_addrs directly can cause a segmentation fault if the primary process has exited or the shared memory is unavailable." The effect is throughput the life-cycle of secondary process existence in dpdk after primary, You can check https://patches.dpdk.org/project/dpdk/patch/20250721073851.963141-1-14pwcse1...@uetpeshawar.edu.pk/ https://patches.dpdk.org/project/dpdk/patch/20250721105522.1019515-1-14pwcse1...@uetpeshawar.edu.pk/ I think most of the details have already been provided. The community agrees with the current solution. Thanks. There are couple of corrections that needs to shared to the current understanding you are sharing 1. Please find DPDK Documentation on mutli process as 4. Multi-process Support — Data Plane Development Kit 25.07.0 documentation<https://doc.dpdk.org/guides/prog_guide/multi_proc_support.html> 2. From your ` This patch only adds stability and robustness to primary-secondary applications.` this is not true 3. ` any other application which provides primary-secondary support could also follow the same model` - actually by default the eal args supports mutli process. Only by specifying `--single-process` this is disabled 4. ` the reason for the primary process termination could be close or shutdown (ctrl + c or ctrl + q)` DPDK testpmd and a few examples like L2fwd, eventdev, l3fwd and other uses SIGACTION to check gracefully exit 1. In all graceful exit `rte_eal_cleanup is invoked`. Hence any secondary (as shared in my previous emails) will have dangling pointers. 2. For customer till 2023 and internal testing (as mentioned in my email) any abrupt kill of primary does not corrupt the secondary rte_eth_dev_list. From patch perspective https://patches.dpdk.org/project/dpdk/patch/20250721073851.963141-1-14pwcse1...@uetpeshawar.edu.pk/ what Stephen shared is correct, PMD are not incharge of process aliveness. It is correct hence NAK net/ice: fix segfault in secondary process by validating dev_private pointer - Patchwork<https://patches.dpdk.org/project/dpdk/patch/20250721105522.1019515-1-14pwcse1...@uetpeshawar.edu.pk/> trying to do in ICE driver should be NAK From solution perspective, in my earlier email I clearly asked why have not explored multi-process communication thread. Link to it is same as above under section ` 4.4. Communication between multiple processes` You could always design when ` (ctrl + c or ctrl + q)` primary can send a broadcast to all secondaries to stop eth, event, bbdev or any such execution or simply exit. This is what we designed and shared as working logic. Note: You have also mentioned ` The community agrees with the current solution. ` which paints a picture of 1. Only there is one way to solve this problem. 2. Since I did not agree to your thought process I am not community. Personally, I am not happy with such biases, DPDK had been supporting and nurturing open healthy conversation and platform. I am not aware this was changed.