diff --git a/openvswitch/templates/bin/_openvswitch-vswitchd.sh.tpl b/openvswitch/templates/bin/_openvswitch-vswitchd.sh.tpl index 9bb341f7d..877270510 100644 --- a/openvswitch/templates/bin/_openvswitch-vswitchd.sh.tpl +++ b/openvswitch/templates/bin/_openvswitch-vswitchd.sh.tpl @@ -51,16 +51,20 @@ function start () { ovs-vsctl --db=unix:${OVS_SOCKET} --no-wait set Open_vSwitch . other_config:dpdk-mem-channels={{ .Values.conf.ovs_dpdk.mem_channels | quote }} {{- end }} -{{- if .Values.conf.ovs_dpdk.pmd_cpu_mask }} +{{- if hasKey .Values.conf.ovs_dpdk "pmd_cpu_mask" }} ovs-vsctl --db=unix:${OVS_SOCKET} --no-wait set Open_vSwitch . other_config:pmd-cpu-mask={{ .Values.conf.ovs_dpdk.pmd_cpu_mask | quote }} PMD_CPU_MASK={{ .Values.conf.ovs_dpdk.pmd_cpu_mask | quote }} {{- end }} -{{- if .Values.conf.ovs_dpdk.lcore_mask }} +{{- if hasKey .Values.conf.ovs_dpdk "lcore_mask" }} ovs-vsctl --db=unix:${OVS_SOCKET} --no-wait set Open_vSwitch . other_config:dpdk-lcore-mask={{ .Values.conf.ovs_dpdk.lcore_mask | quote }} LCORE_MASK={{ .Values.conf.ovs_dpdk.lcore_mask | quote }} {{- end }} +{{- if hasKey .Values.conf.ovs_dpdk "vhost_iommu_support" }} + ovs-vsctl --db=unix:${OVS_SOCKET} --no-wait set Open_vSwitch . other_config:vhost-iommu-support={{ .Values.conf.ovs_dpdk.vhost_iommu_support }} +{{- end }} + ovs-vsctl --db=unix:${OVS_SOCKET} --no-wait set Open_vSwitch . other_config:vhost-sock-dir={{ .Values.conf.ovs_dpdk.vhostuser_socket_dir | quote }} ovs-vsctl --db=unix:${OVS_SOCKET} --no-wait set Open_vSwitch . other_config:dpdk-init=true diff --git a/openvswitch/values.yaml b/openvswitch/values.yaml index 46a64ce6b..4740ce9c8 100644 --- a/openvswitch/values.yaml +++ b/openvswitch/values.yaml @@ -201,9 +201,17 @@ conf: # socket_memory: 1024 # hugepages_mountpath: /dev/hugepages # vhostuser_socket_dir: vhostuser + # ## Optional hardware specific parameters: modify to match NUMA topology # mem_channels: 4 # lcore_mask: 0x1 # pmd_cpu_mask: 0x4 - ## Optional driver to use + # + ## Optional driver to use. Driver name should be the same as the one + ## specified in the ovs_dpdk section in the Neutron values and vice versa # driver: vfio-pci + # + ## Optional security feature + # vHost IOMMU feature restricts the vhost memory that a virtio device + # access, available with DPDK v17.11 + # vhost_iommu_support: true