On Tue, 29 Jul 2025 01:42:29 -0400
Khadem Ullah <14pwcse1...@uetpeshawar.edu.pk> wrote:

> Hi Stephen,
> 
> Many Thanks for the feedback.
> I have addressed all the comments on the patch, I have removed the 
> unnecessary check in ethdev, the only one check in rte_ethdev seems to be a 
> neccessary one, as without it, it can still generate segfault while secondary 
> exists after primary.
> 
> Best regards,
> Khadem

Did a bunch more testing, and the problem is much deeper than your initial 
observation.

If primary process exits, the data structures all over secondary process are 
complete
garbage. Lots of use after free, linked lists that point to freed data ...

The root cause is that when secondary process starts, it requests current device
state (buses, devices, etc) from primary. When primary process exits it removes
all devices; but there is no mechanism to tell secondary!

For now, the only thing I can think of is to have the secondary process monitor
in testpmd do an immediate exit, no cleanups.

Reply via email to