This RFC patch makes use of the CONFIG_RTE_LIBRTE_VHOST_NUMA option
available in DPDK v2.2 that relocates vhost device memory managed by
DPDK to the same NUMA node that QEMU device memory is located on.
In OVS, now the mempool and PMD servicing the port are attempted to be
relocated to this NUMA node as well. Previously, they always remained
on the NUMA node of the master lcore.

This patch makes use of the netdev-reconfigure functionality implemented
in a recent patchset by Daniele Di Proietto:
http://openvswitch.org/pipermail/dev/2016-March/067806.html

The following patch for DPDK is needed in order to avoid a memory error in
DPDK. It is available on the current DPDK master branch or here:
http://dpdk.org/dev/patchwork/patch/9623/

Tested with QEMU v2.5.0

v2:
- Updated build scripts to include information on required numa packages.
- As suggested by Danielle, introduced requested_socket_id variable to
record request to change numa id that will then be updated during the call
to netdev_dpdk_vhost_user_reconfigure rather than during the new_device
call. Mempool is also changed within the reconfigure function.

 .travis.yml                     |  3 +++
 INSTALL.DPDK.md                 | 10 +++++++++-
 acinclude.m4                    |  2 +-
 lib/netdev-dpdk.c               | 37 ++++++++++++++++++++++++++++++++++---
 rhel/openvswitch-fedora.spec.in |  1 +
 5 files changed, 48 insertions(+), 5 deletions(-)

-- 
2.4.3

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

Reply via email to