[ovs-dev] [RFC 0/2] dpdk: minor refactor of the initialization step

Mooney, Sean K sean.k.mooney at intel.com
Fri Apr 6 11:42:14 UTC 2018

So just from a deployment tools point of view I would like to point out that
This change could break existing workflow that deploy ovs in a docker container.
Kolla ansible assumes that if the docker ovs_vswitchd container is still running that the
is infact running in dpdk mode when we set dpdk-init=true.

Can I request that if you make this change you add something along the lines of
dpdk-init-is-fatal=true/false so that we can explicitly say which behavior we want.
I would not be surprised if people have built monitoring around "is the ovs-vswitchd running"
To infer at least at a highlevel that "everything is fine" where as the log message/db field proposed
Here will invalidate that.
it would be ease to check that field but its work that needs to be done in multiple places.

> -----Original Message-----
> From: Aaron Conole [mailto:aconole at redhat.com]
> Sent: Thursday, April 5, 2018 10:23 PM
> To: dev at openvswitch.org
> Cc: Stokes, Ian <ian.stokes at intel.com>; Kevin Traynor
> <ktraynor at redhat.com>; Ilya Maximets <i.maximets at samsung.com>; Loftus,
> Ciara <ciara.loftus at intel.com>; Mooney, Sean K
> <sean.k.mooney at intel.com>; Terry Wilson <twilson at redhat.com>
> Subject: [RFC 0/2] dpdk: minor refactor of the initialization step
> Sometimes, DPDK initialization can fail, but ovs-vswitchd will abort in
> that case.  When that occurs, ovs-vswitchd will be restarted by the
> monitor and immediately abort.  This is rather unfriendly to users, who
> would prefer to possibly correct the issue or at least, not have lots
> of processes continually spawning.
> This series accepts that rte_eal_init() can and does fail for real.  It
> reflects the initialization status in the database, as well as adding
> the DPDK version (where appropriate).
> Submitted as RFC to spawn discussion around the type to reflect for the
> initialized information.  Presented here as a boolean - however, it
> might be more interesting to be a 'string' and have more elaborate
> details (ex: 'failed - ovs_strerror(rte_errno)' or 'uninitialized' or
> 'initialized').
> Aaron Conole (2):
>   dpdk: allow init to fail
>   dpdk: reflect status and version in the database
>  lib/dpdk-stub.c            | 10 ++++++++++
>  lib/dpdk.c                 | 31 +++++++++++++++++++++++++------
>  lib/dpdk.h                 |  3 ++-
>  vswitchd/bridge.c          |  5 +++++
>  vswitchd/vswitch.ovsschema | 11 ++++++++---
>  vswitchd/vswitch.xml       | 11 +++++++++++
>  6 files changed, 61 insertions(+), 10 deletions(-)
> --
> 2.14.3

More information about the dev mailing list