Thank you for all your answer.
I asked this question because I want to use dual processes to complete the hot upgrade of ovs-vswitchd. When ovs-dpdk starts, rte_eal_init will be called to complete dpdk initialization. 
The old process dpdk uses primary to start, and the new process dpdk uses secondary to start and upgrade. After completion, the old process exits, that is, the primary exits. At this time, how does the secondary process become the primary process without disconnecting the network?





--

它山之石,可以攻玉。



在 2021-11-04 17:41:02,"Burakov, Anatoly" <anatoly.burakov@intel.com> 写道: >> -----Original Message----- >> From: David Marchand <david.marchand@redhat.com> >> Sent: Thursday, November 4, 2021 8:30 AM >> To: 赖香武 <15310488637@163.com> >> Cc: users <users@dpdk.org>; Burakov, Anatoly >> <anatoly.burakov@intel.com>; Richardson, Bruce >> <bruce.richardson@intel.com> >> Subject: Re: Aboud DPDK Multi-Process >> >> On Thu, Nov 4, 2021 at 9:21 AM 赖香武 <15310488637@163.com> wrote: >> > >> > Hello, I have a question about dpdk multi-process. After starting the >> > primary process and the secondary process, when the current primary >> > process exits, how does the secondary process become a new primary >> > process to make the program continue? Hope to get your answer, thank >> > you! >> >> Not sure why you need this, but DPDK won't do for you. >> >> The process type is decided once at DPDK init, and that is something that >> affects how your program behaves after. >> Switching type while running would break assumptions in the DPDK drivers >> and libraries. >> >> One thing that comes to mind, is that you could try to call >> rte_eal_cleanup() and call rte_eal_init() again. >> This is probably something that is not tested (so I'd expect issues, maybe >> leaks etc..). >> >> But then, you probably want to restart your process entirely. > >[[AB]] >Calling rte_eal_init() twice would be a terrible idea, because not everything (not even remotely!) gets cleaned up with rte_eal_cleanup(), and a lot of stuff is allocated statically. > >So, as far as I'm concerned, this usage scenario is considered to be unsupported. > >> >> >> -- >> David Marchand >