2 ;; Copyright (c) 2010-2017 Intel Corporation
4 ;; Licensed under the Apache License, Version 2.0 (the "License");
5 ;; you may not use this file except in compliance with the License.
6 ;; You may obtain a copy of the License at
8 ;; http://www.apache.org/licenses/LICENSE-2.0
10 ;; Unless required by applicable law or agreed to in writing, software
11 ;; distributed under the License is distributed on an "AS IS" BASIS,
12 ;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 ;; See the License for the specific language governing permissions and
14 ;; limitations under the License.
18 ; This configuration is similar to config/nop.cfg with the difference being the
19 ; type of interfaces. The physical ports are replaced by DPDK rings. To use this
20 ; functionality, RTE_TARGET must be set to x86_64-ivshmem-linuxapp-gcc before
21 ; compiling DPDK (i.e. export RTE_TARGET=x86_64-ivshmem-linuxapp-gcc). Also,
22 ; DPDK needs to be compiled with both CONFIG_RTE_BUILD_COMBINE_LIBS=y and
23 ; CONFIG_RTE_LIBRTE_VHOST=y
24 ; The configuration can then be used inside a VM running on top of Open vSwitch.
25 ; The SHA-1 of the Open vSwitch version that has been tested is c78a00b112c9. To
26 ; run the VM, Qemu needs to be patched to support ivshmem with multiple regions
27 ; and the right command line arguments to be used to share memory. Download and
28 ; patch Qemu 1.6.2 using the following commands:
29 ; git clone git://git.qemu-project.org/qemu.git
32 ; wget https://01.org/sites/default/files/page/qemu-v1.6.2-ivshmem-dpdk.patch
33 ; patch -p1 < qemu-v1.6.2-ivshmem-dpdk.patch
36 ; After Open vSwitch has been configured with DPDK rings as ports (i.e. ports
37 ; with type dpdkr), Qemu needs to be started with the correct command line
38 ; arguments. Refer to Section 11.1 from the DPDK Programmer's Guide on how to
39 ; build the Qemu command line arguments.
40 ; This configuration uses 4 ports. This means that 8 rings (4 for TX and 4 for
41 ; RX) will need to be shared with the VM through ivshmem.
45 -n=4 ; force number of memory channels
46 no-output=no ; disable DPDK debug output
74 name=NOP forwarding rings (4x)