A previous change modified the way DPDK configuration would be accepted by the system. This updates the documentation to align with the new method of configuring DPDK.
Signed-off-by: Aaron Conole <acon...@redhat.com> --- INSTALL.DPDK.md | 52 ++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 38 insertions(+), 14 deletions(-) diff --git a/INSTALL.DPDK.md b/INSTALL.DPDK.md index 96b686c..789ea68 100644 --- a/INSTALL.DPDK.md +++ b/INSTALL.DPDK.md @@ -143,22 +143,46 @@ Using the DPDK with ovs-vswitchd: 5. Start vswitchd: - DPDK configuration arguments can be passed to vswitchd via `--dpdk` - argument. This needs to be first argument passed to vswitchd process. - dpdk arg -c is ignored by ovs-dpdk, but it is a required parameter - for dpdk initialization. - + DPDK configuration arguments can be passed to vswitchd via the Open_vSwitch + other_config database. The recognized configuration options are listed. + + * dpdk + This is a boolean configuration option. A value of 'true' tells + Open_vSwitch to initialize the DPDK EAL. A set of nominal defaults are + provided so that simply enabling this option will be sufficient to configure + DPDK enabled ports. + * dpdk_core_mask + This is DPDK's -c command line option, and specifies the core mask to + the EAL. + * dpdk_mem_channels + This is DPDK's -n option, to configure the number of memory spread channels + into the CPU. It is purely an optimization flag. + * dpdk_alloc_mem + Total memory to pre-allocate + * dpdk_socket_mem + Memory to allocate on specific sockets (use comma separated values) + * dpdk_hugepage_dir + Directory where hugetlbfs is mounted + * cuse_dev_name + Option to set the vhost_cuse character device name. + * vhost_sock_dir + Specify a custom directory for the vhost_user unix socket files. + + Note that changing any of these options requires restarting the ovs-vswitchd + application. + ``` export DB_SOCK=/usr/local/var/run/openvswitch/db.sock - ovs-vswitchd --dpdk -c 0x1 -n 4 -- unix:$DB_SOCK --pidfile --detach + ovs-vsctl set Open_vSwitch . other_config:dpdk=true + ovs-vswitchd unix:$DB_SOCK --pidfile --detach ``` If allocated more than one GB hugepage (as for IVSHMEM), set amount and use NUMA node 0 memory: ``` - ovs-vswitchd --dpdk -c 0x1 -n 4 --socket-mem 1024,0 \ - -- unix:$DB_SOCK --pidfile --detach + ovs-vsctl set Open_vSwitch . other_config:dpdk_socket_mem="1024,0" + ovs-vswitchd unix:$DB_SOCK --pidfile --detach ``` 6. Add bridge & ports @@ -523,9 +547,9 @@ have arbitrary names. found in the next section "DPDK vhost-user VM configuration" Note: If you wish for the vhost-user sockets to be created in a directory other than `/usr/local/var/run/openvswitch`, you may specify - another location on the ovs-vswitchd command line like so: + another location in the ovsdb like: - `./vswitchd/ovs-vswitchd --dpdk -vhost_sock_dir /my-dir -c 0x1 ...` + `./ovs-vsctl set Open_vSwitch . other_config:vhost_sock_dir=location` DPDK vhost-user VM configuration: --------------------------------- @@ -641,11 +665,11 @@ DPDK vhost-cuse VM configuration: The new character device filename must be specified on the vswitchd commandline: - `./vswitchd/ovs-vswitchd --dpdk --cuse_dev_name my-vhost-net -c 0x1 ...` + `./utilities/ovs-vsctl set Open_vSwitch . \ + other_config:cuse_dev_name=my-vhost-net ` - Note that the `--cuse_dev_name` argument and associated string must be the first - arguments after `--dpdk` and come before the EAL arguments. In the example - above, the character device to be used will be `/dev/my-vhost-net`. + In the example above, the character device to be used will + be `/dev/my-vhost-net`. 2. This step is only needed if reusing the standard character device. It will conflict with the kernel vhost character device so the user must first -- 2.6.1.133.gf5b6079 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev