https://bugs.dpdk.org/show_bug.cgi?id=284
Bug ID: 284 Summary: Secondary not able to Rx/TX after primary dies in symmetric multiprocess Product: DPDK Version: 18.11 Hardware: x86 OS: Linux Status: CONFIRMED Severity: major Priority: Normal Component: other Assignee: dev@dpdk.org Reporter: oleksandr.gromovs...@harmonicinc.com Target Milestone: --- In our project we plan to use symmetric multiprocessing to have redundancy on application level. So if primary crashes secondary still can process packets from the eth ports. But currently i see that when primary is alive secondary can receive the data from port and everything works as expected, but after primary dies secondary also stop receiving the data. I tested same in symmetric_mp example and problem is same. According to documentation: https://doc.dpdk.org/guides-18.11/sample_app_ug/multi_process.html ... it is not necessary to restart all processes if the primary instance dies. Instead, that process can be restarted as a secondary, ... I'm executing primary and secondary with next two commands ./build/symmetric_mp -c 1 -n 4 --proc-type=auto -- -p 3 --num-procs=2 --proc-id=0 ./build/symmetric_mp -c 2 -n 4 --proc-type=auto -- -p 3 --num-procs=2 --proc-id=1 I modified the code to print statistics each second and see rx/tx increasing but only till primary is alive. EAL: Detected 4 lcore(s) EAL: Detected 1 NUMA nodes EAL: Multi-process socket /var/run/dpdk/rte/mp_socket EAL: Probing VFIO support... EAL: PCI device 0000:01:00.0 on NUMA socket -1 EAL: Invalid NUMA socket, default to 0 EAL: probe driver: 8086:10fb net_ixgbe EAL: PCI device 0000:01:00.1 on NUMA socket -1 EAL: Invalid NUMA socket, default to 0 EAL: probe driver: 8086:10fb net_ixgbe # Initialising port 0... # Initialising port 1... Checking link status...done Port0 Link Up. Speed 10000 Mbps - full-duplex Port1 Link Up. Speed 10000 Mbps - full-duplex APP: Finished Process Init. Lcore 0 using ports 0 1 lcore 0 using queue 0 of each port Port 0: RX - 0, TX - 0, Drop - 0 Port 1: RX - 0, TX - 0, Drop - 0 Port 0: RX - 0, TX - 1, Drop - 0 Port 1: RX - 1, TX - 0, Drop - 0 Port 0: RX - 0, TX - 2, Drop - 0 Port 1: RX - 2, TX - 0, Drop - 0 Port 0: RX - 0, TX - 3, Drop - 0 Port 1: RX - 3, TX - 0, Drop - 0 Port 0: RX - 0, TX - 4, Drop - 0 Port 1: RX - 4, TX - 0, Drop - 0 Restarting of primary as secondary ./build/symmetric_mp -c 1 -n 4 --proc-type=secondary -- -p 3 --num-procs=2 --proc-id=0 does not help. Only stop of all applications and starting of primary again makes rx/tx working again. -- You are receiving this mail because: You are the assignee for the bug.