[ovs-dev] [PATCH v2 0/7] PMD Testsuite.
Daniele Di Proietto
diproiettod at vmware.com
Tue Jun 7 01:53:29 UTC 2016
Hi Ilya,
thanks for the series, I really appreciate the effort to test
the pmd threads.
I reviewed the whole series and it looks good to me, but I found
some problems with travis and non linux systems.
1 On FreeBSD (and I assume also on windows), the pmd tests fail,
because ovs_numa_get_n_cores() returns OVS_CORE_UNSPEC and
dpif-netdev refuses to add the port. This could be easily
solvable by skipping the tests on windows and BSD with
AT_SKIP_IF.
2 When I try to run the pmd tests under valgrind, I get a failure,
because of a timeout. I've tried adding a sched_yield() in
netdev_dummy_rxq_recv() and the issue seems to be fixed, so maybe
we can do that.
3 When the tests are run as a non root user, pthread_setaffinity_np()
fails, causing the travis build to fail:
https://travis-ci.org/ddiproietto/ovs/jobs/135744944#L7953
My idea to address 1 and 3 (I'm especially concerned about 3) is to have
a dummy implementation for ovs-numa. I've attempted that in the past,
when I tried to work on my dummy-pmd implementation, so I posted a
series here:
http://openvswitch.org/pipermail/dev/2016-June/072277.html
but I'm open to better ideas. Feel free to ack or include my patches
in your series (or, if you have better ideas to discard them)
In the meantime I pushed everything except the tests to master.
Thanks,
Daniele
On 27/05/2016 06:32, "Ilya Maximets" <i.maximets at samsung.com> wrote:
>New 'dummy-pmd' class created in a purpose of testing of PMD interfaces.
>Added a bunch of PMD specific tests. Some already existing tests
>reused to run with 'dummy-pmd' interfaces.
>'appctl dpctl/flow-get' implemented for dpif-netdev with PMD threads.
>
>Version 2:
> * 'dummy-pmd' implemented as a separate netdev_class.
> 'dummy' and 'dummy-pmd' available at the same time.
> * Proper multiqueue support implemented.
> * Only few tests restarted with dummy-pmd.
> Restarting implemented similar to python2/3 case.
> * Rebased on current master.
>
>Ilya Maximets (7):
> netdev-dummy: Add dummy-pmd class.
> dpif-netdev.at: Run tests with dummy-pmd.
> dpctl: Implement dpctl/flow-get for dpif-netdev.
> ofproto-dpif.at: Run tests with dummy-pmd.
> ovs-vsctl.at: Use OVS_VSCTL_CLEANUP.
> netdev-dummy: Add multiqueue support to dummy-pmd.
> testsuite-pmd: Add PMD specific tests.
>
> lib/dpctl.c | 3 +-
> lib/dpif-netdev.c | 49 ++++++---
> lib/netdev-dummy.c | 264 +++++++++++++++++++++++++++++++++---------------
> tests/automake.mk | 1 +
> tests/dpif-netdev.at | 146 ++++++++++++++------------
> tests/ofproto-dpif.at | 149 +++++++++++++++------------
> tests/ofproto-macros.at | 31 ++++--
> tests/ovs-vsctl.at | 6 +-
> tests/pmd.at | 179 ++++++++++++++++++++++++++++++++
> tests/testsuite.at | 1 +
> 10 files changed, 588 insertions(+), 241 deletions(-)
> create mode 100644 tests/pmd.at
>
>--
>2.5.0
>
More information about the dev
mailing list