During posting packets from one thread to another thread(both threads are in different cores), used DPDK Event Dev Queue.
Observed Event Dev Queue Enqueue failure. Cross checked the EvtDevQ stats, it shown packets are in Inflight mode, not posted to Queue it seems and enqueue failed and not recovered. Also schedule calls happend multiple times.
Note: Receiver thread is not in tight loop
Event Enqueue function:
rte_event_enqueue_burst()
Schedule call function:
rte_service_run_iter_on_app_lcore()
Port 0 and Queue 0 Used in this case.
How can I fix it? Any help is appreciated.
Stats:
Dev=0 Port=1EventDev todo-fix-name: ports 4, qids 3
rx 32768
drop 0
tx 4096
sched calls: 628945658
sched cq/qid call: 628964843
sched no IQ enq: 628926401
sched no CQ enq: 628942982
inflight 32768, credits: 0
Port 0
rx 0 drop 0 tx 4096 ^[[0minflight 4096^[[0m
Max New: 32768 Avg cycles PP: 0 Credits: 0
Receive burst distribution:
0:100% 1-4:0.00% 5-8:0.00% 9-12:0.00%
^[[0mrx ring used: 0 free: 4096^[[0m
^[[0mcq ring used: 0 free: 128^[[0m
Port 1
rx 0 drop 0 tx 0 ^[[0minflight 0^[[0m
Max New: 32768 Avg cycles PP: 0 Credits: 0
Receive burst distribution:
0:100%
^[[0mrx ring used: 0 free: 4096^[[0m
^[[0mcq ring used: 0 free: 128^[[0m
Port 2
rx 32768 drop 0 tx 0 ^[[0minflight 0^[[0m
Max New: 32768 Avg cycles PP: 0 Credits: 0
Receive burst distribution:
0:-nan%
^[[0mrx ring used: 0 free: 4096^[[0m
^[[0mcq ring used: 0 free: 128^[[0m
Port 3 (SingleCons)
rx 0 drop 0 tx 0 ^[[0minflight 0^[[0m
Max New: 32768 Avg cycles PP: 0 Credits: 0
Receive burst distribution:
0:-nan%
^[[0mrx ring used: 0 free: 4096^[[0m
^[[0mcq ring used: 0 free: 128^[[0m
Queue 0 (Atomic)
rx 32768 drop 0 tx 4096
Per Port Stats:
Port 0: Pkts: 4096 Flows: 1
Port 1: Pkts: 0 Flows: 0
Port 2: Pkts: 0 Flows: 0
Port 3: Pkts: 0 Flows: 0
^[[0miq 0: Used 28672^[[0m
Queue 1 (Atomic)
rx 0 drop 0 tx 0
Per Port Stats:
Port 0: Pkts: 0 Flows: 0
Port 1: Pkts: 0 Flows: 0
Port 2: Pkts: 0 Flows: 0
Port 3: Pkts: 0 Flows: 0
-- iqs empty --
Queue 2 (Directed)
rx 0 drop 0 tx 0
Per Port Stats:
Port 0: Pkts: 0 Flows: 0
Port 1: Pkts: 0 Flows: 0
Port 2: Pkts: 0 Flows: 0
Port 3: Pkts: 0 Flows: 0
-- iqs empty --