]> git.proxmox.com Git - ovs.git/commit
dpif-netdev: Add port/queue tiebreaker to rxq_cycle_sort.
authorKevin Traynor <ktraynor@redhat.com>
Thu, 23 Nov 2017 19:41:55 +0000 (19:41 +0000)
committerIan Stokes <ian.stokes@intel.com>
Fri, 8 Dec 2017 21:42:54 +0000 (21:42 +0000)
commita130f1a89bd8ec1176ac8d35a98c284a5e3f5691
treee08562c4525420c765fc65bc15104eb66eb9c57a
parent255b7bda98974c9732c435c3d500d50e20bd728e
dpif-netdev: Add port/queue tiebreaker to rxq_cycle_sort.

rxq_cycle_sort is used to compare rx queues by their measured number
of cycles. In the event that they are equal, 0 could be returned.
However, it is observed that returning 0 results in a different sort
order on Windows/Linux. This is ok in practice but it causes a unit
test failure for
"1007: PMD - pmd-cpu-mask/distribution of rx queues" when running
on different OS's.

In order to have a consistent sort result across multiple OS's,
introduce a tiebreaker of port/queue.

Fixes: 655856ef39b9 ("dpif-netdev: Change rxq_scheduling to use rxq processing cycles.")
Reported-by: Alin Gabriel Serdean <aserdean@ovn.org>
Tested-by: Alin Gabriel Serdean <aserdean@ovn.org>
Co-authored-by: Ilya Maximets <i.maximets@samsung.com>
Signed-off-by: Ilya Maximets <i.maximets@samsung.com>
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Signed-off-by: Ian Stokes <ian.stokes@intel.com>
lib/dpif-netdev.c