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

sothy shan sothy.e98 at gmail.com
Thu Jul 21 08:51:03 UTC 2016


On Thu, Jul 21, 2016 at 10:41 AM, sothy shan <sothy.e98 at gmail.com> wrote:
> 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.

I run testpmd command.The result is

Configuring Port 0 (socket 0)
Port 0: 00:0C:29:B5:9F:5B
Configuring Port 1 (socket 0)
Port 1: 00:0C:29:B5:9F:65
Checking link statuses...
Port 0 Link Up - speed 10000 Mbps - full-duplex
Port 1 Link Up - speed 10000 Mbps - full-duplex
Done
No commandline core given, start packet forwarding
  io packet forwarding - CRC stripping disabled - packets/burst=32
  nb forwarding cores=1 - nb forwarding ports=2
  RX queues=1 - RX desc=128 - RX free threshold=0
  RX threshold registers: pthresh=0 hthresh=0 wthresh=0
  TX queues=1 - TX desc=512 - TX free threshold=0
  TX threshold registers: pthresh=0 hthresh=0 wthresh=0
  TX RS bit threshold=0 - TXQ flags=0x200
Press enter to exit

Telling cores to stop...
Waiting for lcores to finish...

  ---------------------- Forward statistics for port 0  ----------------------
  RX-packets: 88             RX-dropped: 0             RX-total: 88
  TX-packets: 2              TX-dropped: 0             TX-total: 2
  ----------------------------------------------------------------------------

  ---------------------- Forward statistics for port 1  ----------------------
  RX-packets: 2              RX-dropped: 0             RX-total: 2
  TX-packets: 88             TX-dropped: 0             TX-total: 88
  ----------------------------------------------------------------------------

  +++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++
  RX-packets: 90             RX-dropped: 0             RX-total: 90
  TX-packets: 90             TX-dropped: 0             TX-total: 90
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

make sense?

>> [1] http://dpdk.org/doc/guides-16.04/testpmd_app_ug/index.html
>>
>> Mauricio Vasquez,


More information about the discuss mailing list