[ovs-discuss] OVS DPDK|DPDK|ERR|interface dpdk0 start error:operation not permitted.

sothy shan sothy.e98 at gmail.com
Thu Jul 21 08:41:14 UTC 2016


On Wed, Jul 20, 2016 at 9:02 PM, Mauricio Vasquez
<mauricio.vasquez at polito.it> wrote:
> Hi Sothy,
>
> On 07/20/2016 07:40 PM, Aaron Conole wrote:
>>
>> sothy shan <sothy.e98 at gmail.com> writes:
>>
>>> Hello all,
>>
>> Hi Sothy,
>>
>>> I followed the installion guide provided in the web site
>>> https://github.com/openvswitch/ovs/blob/master/INSTALL.DPDK.md#ovstc
>>> to install dpdk OVS.
>>>
>>> I am rurnning Ubuntu 14.04 (kernel 3.13). It is a VM running VMware.
>>> One intereface is enabled by VMXNET3.
>
>
> It is not clear for me, are you trying to install OvS within the VM?
>
>>> I used dpdk 16.04
>>> Today I made clone of OVS (committ
>>> :bf32e3e2c029da18b5d6fd9210cb0ea12a1d0383).
>>>
>>> The following are different configuration compared to above link.
>>>
>>> sysctl -w vm.nr_hugepages=2048
>>> Binded interface via igb_uio.
>>>
>>> Then followed same configuration to start ovs-vsswitch with dpdk.
>>
>> Can you please post the steps exactly that you followed?  Which user you
>> were running as, etc?  Can you also post how you expect packets to
>> arrive into the vm?
>>
>>> I am able to creatre bridge. When I create a port. It gives error
>>> message.
>>
>> Please show the steps for this, too.  The exact commands you used.
>>
>>> When I check ovs-vswitchd.log file,
>>>
>>> There is warning that dpif_netlink|WARN|genric netlink family,
>>> ovs_datapath does not exist. The openvswitch kernel module may be not
>>> loaded.
>>
>> This is definitely a problem.  How did you start the ovs-vswitchd daemon?
>
>
> This is not a problem Aaron, the ovs kernel module is not needed when ovs is
> compiled with DPDK.
>>>
>>> Then ERR: ERR|interface dpdk0 start error:operation not permitted.
>>>
>>> The corresponding port is loaded by dpdk driver as shown in
>>> dpdk_nic_bind --status.
>>>
>>> After that I did sudo ovs-vsctl show. it show br and port details as
>>> well.
>>> I am able to add one flow rule as well. But ovs bridge didnt get
>>> packets from the interface.
>>>
>>> Do you know why this error is popup? anyway to solve the problem?
>>>
>>> Thank you very much
>>>
>>> Best regars
>>> Sothy
>>
>> _______________________________________________
>> discuss mailing list
>> discuss at openvswitch.org
>> http://openvswitch.org/mailman/listinfo/discuss
>
> As Aaron wrote, having the exact commands is important to help you.

My configuration and log info:

sudo sysctl vm.nr_hugepages=2048
sudo mkdir -p /dev/hugepages
sudo  mount -t hugetlbfs hugetlbfs /dev/hugepages
sudo modprobe uio
sudo insmod $DPDK_BUILD/kmod/igb_uio.ko
sudo $DPDK_DIR/tools/dpdk_nic_bind.py --status
sudo $DPDK_DIR/tools/dpdk_nic_bind.py -b igb_uio 0000:0b:00.0
sudo ./dpdk-16.04/tools/dpdk_nic_bind.py --status


Network devices using DPDK-compatible driver
============================================
0000:0b:00.0 'VMXNET3 Ethernet Controller' drv=igb_uio unused=
0000:13:00.0 'VMXNET3 Ethernet Controller' drv=igb_uio unused=

Network devices using kernel driver
===================================
0000:03:00.0 'VMXNET3 Ethernet Controller' if=eth0 drv=vmxnet3
unused=igb_uio *Active*

Other network devices
=====================
<none>

.........Then......................


sudo ovs-vsctl add-port br0 dpdk0 -- set Interface dpdk0 type=dpdk
sudo ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev


Log file/
2016-07-21T07:53:35.527Z|00001|vlog|INFO|opened log file
/var/log/openvswitch/ovs-vswitchd.log
2016-07-21T07:53:35.529Z|00002|ovs_numa|INFO|Discovered 2 CPU cores on
NUMA node 0
2016-07-21T07:53:35.529Z|00003|ovs_numa|INFO|Discovered 1 NUMA nodes
and 2 CPU cores
2016-07-21T07:53:35.529Z|00004|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
connecting...
2016-07-21T07:53:35.529Z|00005|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
connected
2016-07-21T07:53:35.533Z|00006|dpdk|INFO|DPDK Enabled, initializing
2016-07-21T07:53:35.533Z|00007|dpdk|INFO|No vhost-sock-dir provided -
defaulting to /usr/local/var/run/openvswitch
2016-07-21T07:53:35.533Z|00008|dpdk|INFO|EAL ARGS: ovs-vswitchd
--socket-mem 1024,0 -c 0x00000001
2016-07-21T07:53:36.606Z|00009|timeval|WARN|Unreasonably long 1076ms
poll interval (80ms user, 875ms system)
2016-07-21T07:53:36.606Z|00010|timeval|WARN|faults: 3306 minor, 0 major
2016-07-21T07:53:36.606Z|00011|timeval|WARN|context switches: 3
voluntary, 101 involuntary
2016-07-21T07:53:36.606Z|00012|coverage|INFO|Event coverage, avg rate
over last: 5 seconds, last minute, last hour,  hash=398361de:
2016-07-21T07:53:36.606Z|00013|coverage|INFO|bridge_reconfigure
 0.0/sec     0.000/sec        0.0000/sec   total: 1
2016-07-21T07:53:36.606Z|00014|coverage|INFO|cmap_expand
 0.0/sec     0.000/sec        0.0000/sec   total: 9
2016-07-21T07:53:36.606Z|00015|coverage|INFO|miniflow_malloc
 0.0/sec     0.000/sec        0.0000/sec   total: 9
2016-07-21T07:53:36.606Z|00016|coverage|INFO|hmap_pathological
 0.0/sec     0.000/sec        0.0000/sec   total: 1
2016-07-21T07:53:36.606Z|00017|coverage|INFO|hmap_expand
 0.0/sec     0.000/sec        0.0000/sec   total: 640
2016-07-21T07:53:36.606Z|00018|coverage|INFO|txn_unchanged
 0.0/sec     0.000/sec        0.0000/sec   total: 2
2016-07-21T07:53:36.606Z|00019|coverage|INFO|txn_incomplete
 0.0/sec     0.000/sec        0.0000/sec   total: 1
2016-07-21T07:53:36.607Z|00020|coverage|INFO|poll_create_node
 0.0/sec     0.000/sec        0.0000/sec   total: 35
2016-07-21T07:53:36.607Z|00021|coverage|INFO|seq_change
 0.0/sec     0.000/sec        0.0000/sec   total: 38
2016-07-21T07:53:36.607Z|00022|coverage|INFO|pstream_open
 0.0/sec     0.000/sec        0.0000/sec   total: 1
2016-07-21T07:53:36.607Z|00023|coverage|INFO|stream_open
 0.0/sec     0.000/sec        0.0000/sec   total: 1
2016-07-21T07:53:36.607Z|00024|coverage|INFO|util_xalloc
 0.0/sec     0.000/sec        0.0000/sec   total: 11049
2016-07-21T07:53:36.607Z|00025|coverage|INFO|netdev_get_hwaddr
 0.0/sec     0.000/sec        0.0000/sec   total: 1
2016-07-21T07:53:36.607Z|00026|coverage|INFO|netlink_received
 0.0/sec     0.000/sec        0.0000/sec   total: 3
2016-07-21T07:53:36.607Z|00027|coverage|INFO|netlink_sent
 0.0/sec     0.000/sec        0.0000/sec   total: 1
2016-07-21T07:53:36.607Z|00028|coverage|INFO|86 events never hit
2016-07-21T07:53:36.607Z|00029|bridge|INFO|ovs-vswitchd (Open vSwitch) 2.5.90
2016-07-21T07:54:50.861Z|00030|memory|INFO|18980 kB peak resident set
size after 75.3 seconds
2016-07-21T07:54:50.866Z|00031|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath supports recirculation
2016-07-21T07:54:50.866Z|00032|ofproto_dpif|INFO|netdev at ovs-netdev:
MPLS label stack length probed as 3
2016-07-21T07:54:50.866Z|00033|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath supports truncate action
2016-07-21T07:54:50.866Z|00034|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath supports unique flow ids
2016-07-21T07:54:50.866Z|00035|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath does not support ct_state
2016-07-21T07:54:50.866Z|00036|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath does not support ct_zone
2016-07-21T07:54:50.866Z|00037|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath does not support ct_mark
2016-07-21T07:54:50.866Z|00038|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath does not support ct_label
2016-07-21T07:54:50.866Z|00039|ofproto_dpif|INFO|netdev at ovs-netdev:
Datapath does not support ct_state_nat
2016-07-21T07:54:50.875Z|00040|bridge|INFO|bridge br0: added interface
br0 on port 65534
2016-07-21T07:54:50.887Z|00041|dpif_netlink|WARN|Generic Netlink
family 'ovs_datapath' does not exist. The Open vSwitch kernel module
is probably not loaded.
2016-07-21T07:54:50.887Z|00042|bridge|INFO|bridge br0: using datapath
ID 0000c664fbd86348
2016-07-21T07:54:50.887Z|00043|connmgr|INFO|br0: added service
controller "punix:/usr/local/var/run/openvswitch/br0.mgmt"
2016-07-21T07:58:18.796Z|00044|dpdk|INFO|Port 0: 00:0c:29:b5:9f:5b
2016-07-21T07:58:18.810Z|00045|dpdk|ERR|Interface dpdk0 start error:
Operation not permitted
2016-07-21T07:58:18.810Z|00046|dpif|WARN|netdev at ovs-netdev: failed to
add dpdk0 as port: Operation not permitted
2016-07-21T08:10:35.440Z|00047|connmgr|INFO|br0<->unix: 1 flow_mods in
the last 0 s (1 adds)



++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sudo ovs-vsctl show
d53612e0-5d82-4cc1-af7d-ee887a737ef2
    Bridge "br0"
        Port "dpdk0"
            Interface "dpdk0"
                type: dpdk
        Port "br0"
            Interface "br0"
                type: internal

sudo ovs-ofctl dump-flows br0
NXST_FLOW reply (xid=0x4):
 cookie=0x0, duration=487.638s, table=0, n_packets=0, n_bytes=0,
idle_age=487, priority=0 actions=NORMAL


> In addition I would recommend to use the test-pmd [1] application from DPDK
> to check if the issue is also present in that case.
>
> [1] http://dpdk.org/doc/guides-16.04/testpmd_app_ug/index.html
>
> Mauricio Vasquez,



More information about the discuss mailing list