There are many enqueue errors on enabling multiqueue or multiport in VM
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
Trunk |
In Progress
|
High
|
Yi-y-yang | |||
OpenContrail |
New
|
Undecided
|
Unassigned |
Bug Description
Here is "vif --get 4 --rate" output when I run pktgen with 3 ports and 2 queues per port.
vif0/5 PMD: tapb8293d4d-d6
Vrf:4 Flags:PL3L2D QOS:-1 Ref:23
RX device packets:0 bytes:0 errors:0
RX port packets:9181090 errors:0
RX queue packets:2517180 errors:6663956
RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 823863 1030365 920639 345863 598704 1278289 857358 808872
RX packets:2517099 bytes:151025994 errors:0
TX packets:0 bytes:0 errors:0
TX queue packets:0 errors:0
TX port packets:0 errors:0
TX device packets:0 bytes:0 errors:0
The reason is forwarding thread just dequeues once and consumes those packets one forwarding thread enqueued every loop, but the actual case other forwarding threads also enqueue some packets, so gradually lcore rx ring will have more and more packets accumulating there, so enqueue errors will be inevitable.
Ideally, every forwarding thread should consume all the packets enqueued by other forwarding threads once.
tags: | added: vrouter |
Review in progress for https:/ /review. opencontrail. org/45097
Submitter: Yi Yang (<email address hidden>)