On 01/04/2016 11:46 PM, Aaron Conole wrote:
Existing DPDK integration is provided by use of command line options which
must be split out and passed to librte in a special manner. However, this
forces any configuration to be passed by way of a special DPDK flag, and
interferes with ovs+dpdk packaging solutions.

This commit delays dpdk initialization until the first DPDK netdev is added
to the bridge, at which point ovs initializes librte.

On thing to keep in mind is that rte_eal_init() can and will tear down the entire process on failure since DPDK calls rte_panic() if something so much as sneezes. In current OVS this occurs on service startup where its relatively harmless, but with lazy initialization there could be already be other activity that is in risk of getting terminated when the first DPDK port is added.

Fixing rte_eal_init() to gracefully return on failure has been discussed, and agreed on in principle, on DPDK list but all current DPDK versions are nasty wrt that.

        - Panu -

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to