aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Polenchuk <mpolenchuk@mirantis.com>2019-04-01 19:04:00 +0400
committerMichael Polenchuk <mpolenchuk@mirantis.com>2019-04-02 17:37:46 +0400
commit3c83de3afaebc2deb14deafdc99e999dc33f9340 (patch)
treedbbc2241c391370dbed52bd9e993126a23be42c4
parent7a31d776d4bdf122d4c4c8f732304cc83621bdd6 (diff)
[dpdk] Enable per port memory model
The per port memory model provides a more transparent memory usage model and avoids pool exhaustion due to competing memory requirements for interfaces. (http://docs.openvswitch.org/en/latest/topics/dpdk/memory/) Change-Id: I5add0f49cdcdf2fc3d24affee10a275abe3ca46a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
-rw-r--r--mcp/config/scenario/os-nosdn-ovs-ha.yaml1
-rw-r--r--mcp/config/scenario/os-nosdn-ovs-noha.yaml1
-rw-r--r--mcp/config/scenario/os-odl-ovs-noha.yaml1
-rwxr-xr-xmcp/config/states/dpdk19
-rw-r--r--mcp/patches/salt-formula-linux/0004-dpdk-Enable-per-port-memory-model.patch25
m---------mcp/scripts/pharos0
6 files changed, 25 insertions, 22 deletions
diff --git a/mcp/config/scenario/os-nosdn-ovs-ha.yaml b/mcp/config/scenario/os-nosdn-ovs-ha.yaml
index e42d17210..9be6540c7 100644
--- a/mcp/config/scenario/os-nosdn-ovs-ha.yaml
+++ b/mcp/config/scenario/os-nosdn-ovs-ha.yaml
@@ -9,7 +9,6 @@
cluster:
domain: mcp-ovs-dpdk-ha.local
states:
- - dpdk
- openstack_ha
- networks
virtual:
diff --git a/mcp/config/scenario/os-nosdn-ovs-noha.yaml b/mcp/config/scenario/os-nosdn-ovs-noha.yaml
index e1cc6d768..508c2d53b 100644
--- a/mcp/config/scenario/os-nosdn-ovs-noha.yaml
+++ b/mcp/config/scenario/os-nosdn-ovs-noha.yaml
@@ -9,7 +9,6 @@
cluster:
domain: mcp-ovs-dpdk-noha.local
states:
- - dpdk
- openstack_noha
- neutron_gateway
- networks
diff --git a/mcp/config/scenario/os-odl-ovs-noha.yaml b/mcp/config/scenario/os-odl-ovs-noha.yaml
index 0acb5d213..85f74f22f 100644
--- a/mcp/config/scenario/os-odl-ovs-noha.yaml
+++ b/mcp/config/scenario/os-odl-ovs-noha.yaml
@@ -9,7 +9,6 @@
cluster:
domain: mcp-odl-noha.local
states:
- - dpdk
- opendaylight
- openstack_noha
- neutron_gateway
diff --git a/mcp/config/states/dpdk b/mcp/config/states/dpdk
deleted file mode 100755
index 65832db84..000000000
--- a/mcp/config/states/dpdk
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/bash -e
-##############################################################################
-# Copyright (c) 2017 Mirantis Inc., Enea AB and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-CI_DEBUG=${CI_DEBUG:-0}; [[ "${CI_DEBUG}" =~ (false|0) ]] || set -x
-
-# shellcheck disable=SC1090
-source "$(dirname "${BASH_SOURCE[0]}")/../../scripts/lib.sh"
-
-salt -I 'nova:compute' alternatives.set ovs-vswitchd /usr/lib/openvswitch-switch-dpdk/ovs-vswitchd-dpdk
-salt -I 'nova:compute' service.restart openvswitch-switch
-
-# Set datapath type to netdev for public bridge
-salt -I 'nova:compute' cmd.run 'ovs-vsctl br-exists br-floating && ovs-vsctl set bridge br-floating datapath_type=netdev' ignore_retcode=True
diff --git a/mcp/patches/salt-formula-linux/0004-dpdk-Enable-per-port-memory-model.patch b/mcp/patches/salt-formula-linux/0004-dpdk-Enable-per-port-memory-model.patch
new file mode 100644
index 000000000..4a35a8a79
--- /dev/null
+++ b/mcp/patches/salt-formula-linux/0004-dpdk-Enable-per-port-memory-model.patch
@@ -0,0 +1,25 @@
+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+: Copyright (c) 2019 Mirantis Inc., Enea AB and others.
+:
+: All rights reserved. This program and the accompanying materials
+: are made available under the terms of the Apache License, Version 2.0
+: which accompanies this distribution, and is available at
+: http://www.apache.org/licenses/LICENSE-2.0
+::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+From: Michael Polenchuk <mpolenchuk@mirantis.com>
+Date: Mon, 1 Apr 2019 13:09:37 +0400
+Subject: [PATCH] [dpdk] Enable per port memory model
+
+
+diff --git a/linux/network/dpdk.sls b/linux/network/dpdk.sls
+index 786f7c8..48c00f5 100644
+--- a/linux/network/dpdk.sls
++++ b/linux/network/dpdk.sls
+@@ -49,6 +49,7 @@ linux_network_dpdk_ovs_service:
+ - unless: 'ovs-vsctl get Open_vSwitch . other_config | grep "dpdk-init=\"true\""'
+
+ {%- set ovs_options = [
++ 'per-port-memory="true"',
+ "pmd-cpu-mask=\""+network.openvswitch.pmd_cpu_mask+"\"",
+ "dpdk-socket-mem=\""+network.openvswitch.dpdk_socket_mem+"\"",
+ "dpdk-lcore-mask=\""+network.openvswitch.dpdk_lcore_mask+"\"",
diff --git a/mcp/scripts/pharos b/mcp/scripts/pharos
-Subproject 94f99be1ddd263506231ec5b72b576a6c63d82c
+Subproject 4fd183a336dd1047f0468ae2699860c67116c2b