I met a problem: use ovs 3.1.2 and dpdk 22.11.2 in the offload scene, and the offload-thread is 5. when delete bridge, add bridge add eth port repeatedly, sometimes eth port may add failure. The cause is that some offload flow are not deleted during flush. I tried to count the number of times each offload thread created rte-flow and the number of times each offload thread deleted rte-flow, found that some threads lost several deletions when problem happend. Which may be caused by multiple threads, because the same test scenario and only set offload-thread to 1 and there was no problem. In the function "offload_data_destroy" , if rte_flow is not completely deleted will print an error log and free rte-flow-data memory one by one. However, for the offload rte-flow, there are still netdev and some resources offload to hw that are also need to be released. So I try call "netdev_offload_dpdk_flow_destroy" funcion to delete some related resource instead of free directly like the picture below, the problem not happen . I don't know whether this method is practicable. Thanks for any feedback, best wishes! pengxuejiao
_______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev