[ovs-discuss] OVS+DPDK: socket permissions' problem

Aynur Shakirov ajnur.shakirov at tionix.ru
Tue Mar 21 13:17:46 UTC 2017


Hello.

Meta.
OVS ver: 2.7.90, today master (stp tests skipped)
Compiler: GCC 5.3.1, default flags
DPDK: 16.11.1 (from Ubuntu Cloud Archive: Ocata)
Env: Ubuntu 16.04.1 up-to-date.
Kernel: 4.8.0-41-generic

Problem.
When I adds a vhost-interface into bridge OVS specifies incorrect rights 
for the socket:

root at dpdk-compute0:/opt/build# ovs-vsctl add-port br-ex vhost-user-1 -- 
set Interface vhost-user-1 type=dpdkvhostuser

2017-03-21T12:09:33.436Z|00115|dpdk|INFO|VHOST_CONFIG: vhost-user 
server: socket created, fd: 46
2017-03-21T12:09:33.436Z|00116|dpdk|INFO|VHOST_CONFIG: bind to 
/var/run/openvswitch/vhost-user-1
2017-03-21T12:09:33.436Z|00117|dpdk|INFO|EAL: Socket 
/var/run/openvswitch/vhost-user-1 changed permissions to ����
2017-03-21T12:09:33.436Z|00118|dpdk|ERR|EAL: user �ƿ not found, aborting.
2017-03-21T12:09:33.436Z|00119|dpdk|ERR|EAL: vhost-user socket unable to 
get specified user/group: �ƿ

Debug Log is here <http://paste.ubuntu.com/24221473/>.

For past master (2 weeks ago and with -03/march=native compiler flags) 
OVS was trying to configure the socket owner as fdb/show.

DPDK Settings:

root at dpdk-compute0:/opt/build# ovs-vsctl --no-wait get Open_vSwitch . 
other_config
{dpdk-alloc-mem="2048", dpdk-extra="--vhost-owner libvirt-qemu:kvm 
--vhost-perm 0666", dpdk-init="true", dpdk-lcore-mask="0x1", 
dpdk-socket-mem="1024,0"}

OVS config:

root at dpdk-compute0:/opt/build# ovs-vsctl show
972154fa-857e-45e8-b56b-77e5cb6eb685
     Manager "ptcp:6640:127.0.0.1"
         is_connected: true
     Bridge br-int
         Controller "tcp:127.0.0.1:6633"
             is_connected: true
         fail_mode: secure
         Port int-br-ex
             Interface int-br-ex
                 type: patch
                 options: {peer=phy-br-ex}
         Port patch-tun
             Interface patch-tun
                 type: patch
                 options: {peer=patch-int}
         Port br-int
             Interface br-int
                 type: internal
     Bridge br-ex
         Controller "tcp:127.0.0.1:6633"
             is_connected: true
         fail_mode: secure
*Port "vhost-user-1"**
**            Interface "vhost-user-1"**
**                type: dpdkvhostuser*
         Port phy-br-ex
             Interface phy-br-ex
                 type: patch
                 options: {peer=int-br-ex}
         Port br-ex
             Interface br-ex
                 type: internal
         Port "intel_1g_1"
             Interface "intel_1g_1"
                 type: dpdk
                 options: {dpdk-devargs="0000:06:00.1"}
     Bridge br-tun
         Controller "tcp:127.0.0.1:6633"
             is_connected: true
         fail_mode: secure
         Port patch-int
             Interface patch-int
                 type: patch
                 options: {peer=patch-tun}
         Port br-tun
             Interface br-tun
                 type: internal
     ovs_version: "2.7.90"
root at dpdk-compute0:/opt/build#

Command for port add:

root at dpdk-compute0:/opt/build# ovs-vsctl add-port br-ex vhost-user-1 -- 
set Interface vhost-user-1 type=dpdkvhostuser

Actual socket rights after vhost create:

root at dpdk-compute0:/opt/build# ll /var/run/openvswitch/vhost-user-1
s--------- 1 root root 0 Mar 21 07:14 /var/run/openvswitch/vhost-user-1=

Why this happening? And one more question: can enable a debug logs for 
EAL over OVS?

Thanks for help.

-- 
Sincerely,
Aynur Shakirov, 27.
TIONIX RUS.
Planet Earth, Solar System, Milky Way.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20170321/0fd238fe/attachment.html>


More information about the discuss mailing list