[ovs-dev] Q on weird OvS+conntrack behavior

2021-03-25 Thread Ravi Kerur
Hello,

I am working on OvS-DPDK and conntrack and seeing weird behavior, maybe I
am doing something wrong.

ovs-vswitchd --version
ovs-vswitchd (Open vSwitch) 2.13.3
DPDK 19.11.5

I have setup using
https://docs.openvswitch.org/en/latest/tutorials/ovs-conntrack/

After initial syn/syn-ack/ack, flow state moves established state


*root#ovs-appctl dpctl/dump-conntrack | grep
192.168.0.2tcp,orig=(src=192.168.0.2,dst=10.0.0.2,sport=1024,dport=2048),reply=(src=10.0.0.2,dst=192.168.0.2,sport=2048,dport=1024),protoinfo=(state=SYN_SENT)*


*root# ovs-appctl dpctl/dump-conntrack | grep
192.168.0.2tcp,orig=(src=192.168.0.2,dst=10.0.0.2,sport=1024,dport=2048),reply=(src=10.0.0.2,dst=192.168.0.2,sport=2048,dport=1024),protoinfo=(state=ESTABLISHED)*

Then I restart OvS, I still see conntrack entry still present so I wanted
to know where conntrack entries are stored (note that connection has not
received fin/fin-ack yet and restart happened before that). Second
question, is there a way (an API?) to extract flows from conntrack and
program OF tables?

r











*oot#ovs-ctl stop * Exiting ovs-vswitchd (24167) * Exiting ovsdb-server
(24146)root#ovs-ctl start * Starting ovsdb-server * system ID not
configured, please use --system-id * Configuring Open vSwitch system IDs *
Starting ovs-vswitchd * Enabling remote OVSDB managersroot# root#
ovs-appctl dpctl/dump-conntrack | grep
192.168.0.2tcp,orig=(src=192.168.0.2,dst=10.0.0.2,sport=1024,dport=2048),reply=(src=10.0.0.2,dst=192.168.0.2,sport=2048,dport=1024),protoinfo=(state=ESTABLISHED)*

Thanks,
Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS-DPDK as secondary process

2021-03-11 Thread Ravi Kerur
On Thu, Mar 11, 2021 at 12:56 PM Ilya Maximets  wrote:

> On 3/11/21 8:46 PM, Ravi Kerur wrote:
> > On Thu, Mar 11, 2021 at 10:00 AM Ben Pfaff  wrote:
> >
> >> On Thu, Mar 11, 2021 at 03:06:28AM -0800, Ravi Kerur wrote:
> >>> I am looking into running OvS-DPDK as a secondary DPDK process instead
> of
> >>> primary. We have a  custom built binary running as a primary DPDK
> process
> >>> and would like to augment it with OvS-DPDK running as secondary. DPDK
> EAL
> >>> has '--proc-type=secondary' parameter which could be used to run as
> >>> secondary, however, I don't see it as a supported option while
> >> configuring
> >>> OvS-DPDK. Any config in OvS available for this?
> >>
> >> You can set additional DPDK configuration options for OVS with
> >> ovs-vsctl set Open_vSwitch . other-config:dpdk-extra="..."
> >> I don't know whether this particular option works.
> >>
> > Thank you, it worked.
>
> Yes, it might work.  However, OVS uses non-EAL threads to poll
> DPDK ports and not all DPDK mempool implementations are safe
> while using non-EAL threads.  For example, bucket mempool is
> not safe and attempt to use it will crash OVS.  While using
> multi-process mode you also must ensure that both applications
> are running on a different set of cores and that is not easy
> taking into account that non-pmd threads in OVS are not pinned.
> There are likely other places in DPDK that are not safe.
> For these reasons we deprecated and removed support of pdump
> and dpdk ring ports:
>
>   4ae8c4617fd3 ("dpdk: Deprecate pdump support.")
>   b4c5f00c339b ("netdev-dpdk: Deprecate ring ports.")
>
> Disabling of a multi-process support also required in order
> to use new lcore management API which is needed to support
> running on arbitrary CPU cores.
>
> In general, OVS doesn't support multi-process mode and we're
> going to completely disable it and, likely, use '--in-memory'
> by default to avoid littering of a filesystem with hugepage
> files and other stuff.
>

Thanks Ilya for the insight. When I replied "it works", basically I was
able to get past the blocked state. I have used OvS as primary and another
application as a secondary to some extent. I was looking into managing a
pair of packet processing engines as primary/secondary with this effort.
Thanks again for your inputs.


> Best regards, Ilya Maximets.
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS-DPDK as secondary process

2021-03-11 Thread Ravi Kerur
On Thu, Mar 11, 2021 at 10:00 AM Ben Pfaff  wrote:

> On Thu, Mar 11, 2021 at 03:06:28AM -0800, Ravi Kerur wrote:
> > I am looking into running OvS-DPDK as a secondary DPDK process instead of
> > primary. We have a  custom built binary running as a primary DPDK process
> > and would like to augment it with OvS-DPDK running as secondary. DPDK EAL
> > has '--proc-type=secondary' parameter which could be used to run as
> > secondary, however, I don't see it as a supported option while
> configuring
> > OvS-DPDK. Any config in OvS available for this?
>
> You can set additional DPDK configuration options for OVS with
> ovs-vsctl set Open_vSwitch . other-config:dpdk-extra="..."
> I don't know whether this particular option works.
>
Thank you, it worked.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] OvS-DPDK as secondary process

2021-03-11 Thread Ravi Kerur
Hello,

I am looking into running OvS-DPDK as a secondary DPDK process instead of
primary. We have a  custom built binary running as a primary DPDK process
and would like to augment it with OvS-DPDK running as secondary. DPDK EAL
has '--proc-type=secondary' parameter which could be used to run as
secondary, however, I don't see it as a supported option while configuring
OvS-DPDK. Any config in OvS available for this?

Thanks,
Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] ModuleNotFoundError: No module named 'ovs'

2020-06-24 Thread Ravi Kerur
Hi,

I am using OVS 2.13.90 and getting errors when I run

ovs-vtep

Traceback (most recent call last):

  File "/usr/local/share/openvswitch/scripts/ovs-vtep", line 26, in 

import ovs.daemon

ModuleNotFoundError: No module named 'ovs'



pip install ovs

Requirement already satisfied: ovs in /usr/local/lib/python2.7/dist-packages

Requirement already satisfied: sortedcontainers in
/usr/local/lib/python2.7/dist-packages (from ovs)

If I run 'import' from python shell it works fine

python

Python 2.7.17 (default, Nov  7 2019, 10:07:09)

[GCC 7.4.0] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import ovs.daemon

>>> import ovs.dirs

>>> import ovs.unixctl.server

>>> import ovs.util

>>> import ovs.vlog

>>>

OVS is installed with '/usr/local' as a prefix. Anything I need to do to
get 'ovs-vtep' working?

Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS VTEP simulator

2020-06-23 Thread Ravi Kerur
Hello,

I think I figured out the answers to my questions. I need some additional
clarifications on the OvS vtep functionality. We are moving away from
kernel Vxlan to OvS/OvS-DPDK. Kernel Vxlan supports both point-to-point and
point-to-multipoint implementation and we have used that in our current
implementation. With OvS/OvS-DPDK it is point-to-point only, I don't see a
way to do point-2-multipoint even when using ovs-vtep/vtep-ctl. Wanted to
know if it's possible and  any reference available?

Thanks.

On Mon, Jun 22, 2020 at 5:27 PM Ravi Kerur  wrote:

> Hello OvS team,
>
> I am looking into vtep functionality and trying to map it to OvS DPDK as
> most of our usage is with OvS-DPDK.
>
> http://docs.openvswitch.org/en/latest/howto/vtep/
>
> Some clarifications...
>
> In section simulating NVC
>
> $vtep-ctl bind-ls br0 p0 0 ls0
> <--- What is '0' is it port-id of eth1?
>
> $ vtep-ctl set Logical_Switch ls0 tunnel_key=33
> < '33' is some random number or has significance?
>
> Thanks.
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] OvS VTEP simulator

2020-06-22 Thread Ravi Kerur
Hello OvS team,

I am looking into vtep functionality and trying to map it to OvS DPDK as
most of our usage is with OvS-DPDK.

http://docs.openvswitch.org/en/latest/howto/vtep/

Some clarifications...

In section simulating NVC

$vtep-ctl bind-ls br0 p0 0 ls0
<--- What is '0' is it port-id of eth1?

$ vtep-ctl set Logical_Switch ls0 tunnel_key=33
< '33' is some random number or has significance?

Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS-DPDK change interface MAC

2020-05-19 Thread Ravi Kerur
On Mon, May 18, 2020 at 10:58 AM Flavio Leitner  wrote:

> On Mon, May 18, 2020 at 10:19:06AM -0700, Ravi Kerur wrote:
> > To answer your question why I need to change mac address, we recently
> moved
> > from kernel/bond to ovs-dpdk/bond with 2 members. With kernel/bond, all 3
> > interfaces (bond + 2 members) had same mac address and if one member goes
> > down traffic was not hit. With ovs/dpdk bond, bridge and active-slave
> share
> > the same mac address. When active-slave link goes down traffic takes
> > 60seconds hit.
>
> That's odd because the OVS should be sending ARP learning packets (RARP) to
> tell the network about the change and prevent traffic hit.
>
> Do you see the packet going out on the backup slave when it becomes active?
>

I overlooked RARP functionality, I am currently debugging at the switch
side, will check this as well.

>
> > Kernel/bond has bond_mode=4 and ovs/dpdk has balance-tcp configured.
>
> In that case we need to know if LACP is negotiated or not.
>
lacp is negotiated.

ovs-appctl bond/show
 dpdkbond 
bond_mode: balance-tcp
bond may use recirculation: yes, Recirc-ID : 1
bond-hash-basis: 0
updelay: 0 ms
downdelay: 0 ms
next rebalance: 8487 ms
lacp_status: negotiated
lacp_fallback_ab: false
active slave mac: 90:e2:ba:a0:e6:10(dpdk-ens11f0)

slave dpdk-enp4s0f0: enabled
  may_enable: true

slave dpdk-ens11f0: enabled
  active slave
  may_enable: true

ovs-appctl lacp/show
 dpdkbond 
  status: active negotiated
  sys_id: 90:e2:ba:a0:e6:10
  sys_priority: 65534
  aggregation key: 1
  lacp_time: slow

slave: dpdk-enp4s0f0: current attached
  port_id: 1
  port_priority: 65535
  may_enable: true

  actor sys_id: 90:e2:ba:a0:e6:10
  actor sys_priority: 65534
  actor port_id: 1
  actor port_priority: 65535
  actor key: 1
  actor state: activity aggregation synchronized collecting distributing

  partner sys_id: 02:1c:73:f2:ec:71
  partner sys_priority: 32768
  partner port_id: 40
  partner port_priority: 32768
  partner key: 21
  partner state: activity aggregation synchronized collecting distributing

slave: dpdk-ens11f0: current attached
  port_id: 2
  port_priority: 65535
  may_enable: true

  actor sys_id: 90:e2:ba:a0:e6:10
  actor sys_priority: 65534
  actor port_id: 2
  actor port_priority: 65535
  actor key: 1
  actor state: activity aggregation synchronized collecting distributing

  partner sys_id: 02:1c:73:f2:ec:71
  partner sys_priority: 32768
  partner port_id: 32808
  partner port_priority: 32768
  partner key: 21
  partner state: activity aggregation synchronized collecting distributing


> fbl
>
>
>
> >
> > Thanks,
> > Ravi
> >
> > >
> > > >-Original Message-
> > > >From: dev  On Behalf Of Ravi Kerur
> > > >Sent: Wednesday, May 13, 2020 9:56 PM
> > > >To: ovs-dev 
> > > >Subject: [ovs-dev] OvS-DPDK change interface MAC
> > > >
> > > >Hello OvS-DPDK team,
> > > >
> > > >Is there a way to change interface mac address for DPDK interfaces?
> > > >Interfaces are part of LACP bond.
> > > >
> > > >I tried following commands and they don't seem to work.
> > > >
> > > >ovs-vsctl set interface  other-
> > > >config:hwaddr=\"00:11:11:11:11:01\"
> > > >ovs-vsctl set interface  mac=\"00:00:00:01:01:01\"
> > > >
> > > >No error messages in vswitchd log. Logs shown below
> > > >
> > > >
> > > >ovs-ofctl dump-ports-desc br-phy
> > > >OFPST_PORT_DESC reply (xid=0x2):
> > > > 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
> > > > config: 0
> > > > state:  0
> > > > current:10GB-FD AUTO_NEG
> > > > speed: 1 Mbps now, 0 Mbps max
> > > > 2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
> > > > config: 0
> > > > state:  0
> > > > current:10GB-FD AUTO_NEG
> > > > speed: 1 Mbps now, 0 Mbps max
> > > > LOCAL(br-phy): addr:a0:36:9f:5d:af:58
> > > > config: 0
> > > > state:  0
> > > > current:10MB-FD COPPER
> > > > speed: 10 Mbps now, 0 Mbps max
> > > >
> > > >/Execute command***/
> > > >ovs-vsctl set interface dpdk-ens11f0
> > > >other-config:hwaddr=\"00:11:11:11:11:01\"
> > > >
> > > >/***Nothing changed***/
> > > >ovs-ofctl dump-ports-desc br-phy
> > > >OFPST_PORT_DESC reply (xid=0x2):
> > > > 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
> > > > config: 0
> > &g

Re: [ovs-dev] OvS-DPDK change interface MAC

2020-05-18 Thread Ravi Kerur
Hi Roni,

On Sun, May 17, 2020 at 2:18 AM Roni Bar Yanai  wrote:

> Hi Ravi,
>
> The patch only configures internal ports of OVS, other
> ports are blocked (you can look at the code).
> We currently looking for a solution for setting the MAC
>  in case of switchmod when VF is in passthrough and VM is
>  untrusted.
> why do you need to change the mac address on the fly?
>


Thank for your response. I did skim through the code and found

iface_set_mac->netdev_set_etheraddr->netdev->netdev_class->set_etheraddr->
For DPDK netdev netdev_dpdk_set_etheraddr

Though the code in 2.13 is different from the patch. I assumed support is
there and I was not setting it the right way.

To answer your question why I need to change mac address, we recently moved
from kernel/bond to ovs-dpdk/bond with 2 members. With kernel/bond, all 3
interfaces (bond + 2 members) had same mac address and if one member goes
down traffic was not hit. With ovs/dpdk bond, bridge and active-slave share
the same mac address. When active-slave link goes down traffic takes
60seconds hit.

Kernel/bond has bond_mode=4 and ovs/dpdk has balance-tcp configured.

Thanks,
Ravi

>
> >-----Original Message-
> >From: dev  On Behalf Of Ravi Kerur
> >Sent: Wednesday, May 13, 2020 9:56 PM
> >To: ovs-dev 
> >Subject: [ovs-dev] OvS-DPDK change interface MAC
> >
> >Hello OvS-DPDK team,
> >
> >Is there a way to change interface mac address for DPDK interfaces?
> >Interfaces are part of LACP bond.
> >
> >I tried following commands and they don't seem to work.
> >
> >ovs-vsctl set interface  other-
> >config:hwaddr=\"00:11:11:11:11:01\"
> >ovs-vsctl set interface  mac=\"00:00:00:01:01:01\"
> >
> >No error messages in vswitchd log. Logs shown below
> >
> >
> >ovs-ofctl dump-ports-desc br-phy
> >OFPST_PORT_DESC reply (xid=0x2):
> > 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
> > config: 0
> > state:  0
> > current:10GB-FD AUTO_NEG
> > speed: 1 Mbps now, 0 Mbps max
> > 2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
> > config: 0
> > state:  0
> > current:10GB-FD AUTO_NEG
> > speed: 1 Mbps now, 0 Mbps max
> > LOCAL(br-phy): addr:a0:36:9f:5d:af:58
> > config: 0
> > state:  0
> > current:10MB-FD COPPER
> > speed: 10 Mbps now, 0 Mbps max
> >
> >/Execute command***/
> >ovs-vsctl set interface dpdk-ens11f0
> >other-config:hwaddr=\"00:11:11:11:11:01\"
> >
> >/***Nothing changed***/
> >ovs-ofctl dump-ports-desc br-phy
> >OFPST_PORT_DESC reply (xid=0x2):
> > 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
> > config: 0
> > state:  0
> > current:10GB-FD AUTO_NEG
> > speed: 1 Mbps now, 0 Mbps max
> > 2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
> > config: 0
> > state:  0
> > current:10GB-FD AUTO_NEG
> > speed: 1 Mbps now, 0 Mbps max
> > LOCAL(br-phy): addr:a0:36:9f:5d:af:58
> > config: 0
> > state:  0
> > current:10MB-FD COPPER
> > speed: 10 Mbps now, 0 Mbps max
> >
> >Thanks,
> >Ravi
> >___
> >dev mailing list
> >d...@openvswitch.org
> >
> https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.open
> >vswitch.org%2Fmailman%2Flistinfo%2Fovs-
> >devdata=02%7C01%7Croniba%40mellanox.com%7C17acfbf576d840852ac40
> >8d7f76f4355%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C63724992956
> >6354578sdata=UKJmh36BntaRjllz551sBv0ah6O4sF%2BO8d6IGtr3xwM%3D&
> >amp;reserved=0
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS-DPDK change interface MAC

2020-05-15 Thread Ravi Kerur
DPDK team, Kindly let me know if there is a way to change Mac address of
dpdk ports? I am using 2.13.90/19.11 combination.

I looked at following patch and I used the command

ovs-vsctl set Interface  mac="xx:xx:xx:xx:xx:xx"

https://patchwork.ozlabs.org/project/openvswitch/patch/20191030154018.9418-1-i.maxim...@ovn.org/

ovs-vsctl set Interface dpdk-enp24s0f0 mac="11:11:11:11:11:11"

ovs-vsctl: 11:11:11:11:11:11: unexpected ":" parsing set of up to 1 strings

ovs-vsctl set Interface dpdk-enp24s0f0 mac=\"11:11:11:11:11:11\" (No error,
but MAC address not changed)


ovs-ofctl dump-ports-desc br-phy

OFPST_PORT_DESC reply (xid=0x2):

 1(dpdk-enp24s0f0): addr:f8:f2:1e:24:04:94

 config: 0

 state:  0

 current:10GB-FD AUTO_NEG

 speed: 1 Mbps now, 0 Mbps max

 2(dpdk-enp179s0f0): addr:68:05:ca:82:37:50

 config: 0

 state:  0

 current:10GB-FD AUTO_NEG

 speed: 1 Mbps now, 0 Mbps max

 LOCAL(br-phy): addr:f8:f2:1e:24:04:94

 config: 0

 state:  0

 current:10MB-FD COPPER

 speed: 10 Mbps now, 0 Mbps max

Thanks.




On Wed, May 13, 2020 at 11:55 AM Ravi Kerur  wrote:

> Hello OvS-DPDK team,
>
> Is there a way to change interface mac address for DPDK interfaces?
> Interfaces are part of LACP bond.
>
> I tried following commands and they don't seem to work.
>
> ovs-vsctl set interface 
> other-config:hwaddr=\"00:11:11:11:11:01\"
> ovs-vsctl set interface  mac=\"00:00:00:01:01:01\"
>
> No error messages in vswitchd log. Logs shown below
>
>
> ovs-ofctl dump-ports-desc br-phy
> OFPST_PORT_DESC reply (xid=0x2):
>  1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
>  config: 0
>  state:  0
>  current:10GB-FD AUTO_NEG
>  speed: 1 Mbps now, 0 Mbps max
>  2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
>  config: 0
>  state:  0
>  current:10GB-FD AUTO_NEG
>  speed: 1 Mbps now, 0 Mbps max
>  LOCAL(br-phy): addr:a0:36:9f:5d:af:58
>  config: 0
>  state:  0
>  current:10MB-FD COPPER
>  speed: 10 Mbps now, 0 Mbps max
>
> /Execute command***/
> ovs-vsctl set interface dpdk-ens11f0
> other-config:hwaddr=\"00:11:11:11:11:01\"
>
> /***Nothing changed***/
> ovs-ofctl dump-ports-desc br-phy
> OFPST_PORT_DESC reply (xid=0x2):
>  1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
>  config: 0
>  state:  0
>  current:10GB-FD AUTO_NEG
>  speed: 1 Mbps now, 0 Mbps max
>  2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
>  config: 0
>  state:  0
>  current:10GB-FD AUTO_NEG
>  speed: 1 Mbps now, 0 Mbps max
>  LOCAL(br-phy): addr:a0:36:9f:5d:af:58
>  config: 0
>  state:  0
>  current:10MB-FD COPPER
>  speed: 10 Mbps now, 0 Mbps max
>
> Thanks,
> Ravi
>
>
>
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] OvS-DPDK change interface MAC

2020-05-13 Thread Ravi Kerur
Hello OvS-DPDK team,

Is there a way to change interface mac address for DPDK interfaces?
Interfaces are part of LACP bond.

I tried following commands and they don't seem to work.

ovs-vsctl set interface 
other-config:hwaddr=\"00:11:11:11:11:01\"
ovs-vsctl set interface  mac=\"00:00:00:01:01:01\"

No error messages in vswitchd log. Logs shown below


ovs-ofctl dump-ports-desc br-phy
OFPST_PORT_DESC reply (xid=0x2):
 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
 config: 0
 state:  0
 current:10GB-FD AUTO_NEG
 speed: 1 Mbps now, 0 Mbps max
 2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
 config: 0
 state:  0
 current:10GB-FD AUTO_NEG
 speed: 1 Mbps now, 0 Mbps max
 LOCAL(br-phy): addr:a0:36:9f:5d:af:58
 config: 0
 state:  0
 current:10MB-FD COPPER
 speed: 10 Mbps now, 0 Mbps max

/Execute command***/
ovs-vsctl set interface dpdk-ens11f0
other-config:hwaddr=\"00:11:11:11:11:01\"

/***Nothing changed***/
ovs-ofctl dump-ports-desc br-phy
OFPST_PORT_DESC reply (xid=0x2):
 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
 config: 0
 state:  0
 current:10GB-FD AUTO_NEG
 speed: 1 Mbps now, 0 Mbps max
 2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
 config: 0
 state:  0
 current:10GB-FD AUTO_NEG
 speed: 1 Mbps now, 0 Mbps max
 LOCAL(br-phy): addr:a0:36:9f:5d:af:58
 config: 0
 state:  0
 current:10MB-FD COPPER
 speed: 10 Mbps now, 0 Mbps max

Thanks,
Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OVS DPDK VF port representors not working

2020-04-25 Thread Ravi Kerur
Hi Ilya, OvS-DPDK team,

Please correct me if I am wrong. This feature (port representor) seems
broken (non functional) to me as I witnessed 2 basic configuration issues
which should have worked. Moreover, when I look at the patch series it is
from Mellanox and not from OvS/Intel. I am not sure whether this has been
tested correctly. We need this feature and I can volunteer to test it if
needed so kindly let me know what the next steps should be if you agree or
please suggest how to proceed.

Thanks,
Ravi

On Mon, Apr 20, 2020 at 1:04 PM Ravi Kerur  wrote:

>
>
> On Mon, Apr 20, 2020 at 10:37 AM Ravi Kerur  wrote:
>
>>
>>
>> On Mon, Apr 20, 2020 at 3:14 AM Ilya Maximets  wrote:
>>
>>> On 4/19/20 6:08 PM, Ravi Kerur wrote:
>>> >
>>> >
>>> > On Sun, Apr 19, 2020 at 6:14 AM Ilya Maximets >> <mailto:i.maxim...@ovn.org>> wrote:
>>> >
>>> > On 4/18/20 2:33 PM, Ravi Kerur wrote:
>>> > >
>>> > >
>>> > > On Fri, Apr 17, 2020 at 9:57 AM Ilya Maximets <
>>> i.maxim...@ovn.org <mailto:i.maxim...@ovn.org> >> i.maxim...@ovn.org <mailto:i.maxim...@ovn.org>>> wrote:
>>> > >
>>> > > On 4/16/20 11:00 PM, Ravi Kerur wrote:
>>> > > > Hello OvS-DPDK team,
>>> > > >
>>> > > > We are expanding our usage of OvS-DPDK and want to use VF
>>> port representors
>>> > > > for one use-case. Going through the following document it
>>> is unclear how
>>> > > > this functionality can be achieved
>>> > > >
>>> > > > http://docs.openvswitch.org/en/latest/topics/dpdk/phy/
>>> > > >
>>> > > > I believe following things need to be configured before
>>> configuring OvS, I
>>> > > > am using Intel NICs for evaluation
>>> > > >
>>> > > > (1) Create VFs on Intel NICs(82599). This can only happen
>>> when Intel NIC is
>>> > > > bound to its respective kernel driver (ixgbe) via
>>> > > >
>>> > > > echo 2 > /sys/devices//sriov_numvfs
>>> > > >
>>> > > >
>>> > > > It creates 2 VF interfaces bound to ixgbevf driver
>>> > > >
>>> > > >
>>> > > > (2) Using driverctl, bind VF and PF interfaces to
>>> vfio-pci. Moment PF
>>> > > > device is bound to vfio-pci, VF interfaces vanish
>>> > > >
>>> > > >
>>> > > > Question based on the OvS document shown above
>>> > > >
>>> > > >
>>> > > > (1) Binding PF interface?
>>> > > >
>>> > > >
>>> > > > ovs-vsctl add-port br0 dpdk-pf -- set Interface dpdk-pf
>>> type=dpdk
>>> > > > options:dpdk-devargs=:08:00.0
>>> > > >
>>> > > >
>>> > > > What driver interface <:08:00.0> is bound to? igb_uio,
>>> vfio-pci or
>>> > > > kernel driver?
>>> > >
>>> > > I believe that it was tested with igb_uio driver, but I
>>> never tried it myself.
>>> > >
>>> > > In order to have sr-iov configuration support with vfio-pci
>>> driver you need
>>> > > a brand new v5.7-rc1 kernel and DPDK changes that are not
>>> merged yet:
>>> > > https://patchwork.dpdk.org/project/dpdk/list/?series=9356
>>> > > Not sure if it will work smoothly with OVS out of the box,
>>> though.
>>> > >
>>> > >
>>> > > Thanks Ilya for the link. Will look into it.
>>> > >
>>> > > Unfortunately igb_uio doesn't work either. Basics of creating
>>> VF's out of PF and assigning them to DPDK driver itself is not working.
>>> > > My understanding is
>>> > > (1) In order to create VF's NIC should be bound to its kernel
>>> driver. Cannot create VFs when NIC is bound to igb_uio or vfio-pci
>>> > > (2) No mechanism exists to bind both PF and VF to igb_uio to use
>>

Re: [ovs-dev] OVS DPDK VF port representors not working

2020-04-20 Thread Ravi Kerur
On Mon, Apr 20, 2020 at 10:37 AM Ravi Kerur  wrote:

>
>
> On Mon, Apr 20, 2020 at 3:14 AM Ilya Maximets  wrote:
>
>> On 4/19/20 6:08 PM, Ravi Kerur wrote:
>> >
>> >
>> > On Sun, Apr 19, 2020 at 6:14 AM Ilya Maximets > <mailto:i.maxim...@ovn.org>> wrote:
>> >
>> > On 4/18/20 2:33 PM, Ravi Kerur wrote:
>> > >
>> > >
>> > > On Fri, Apr 17, 2020 at 9:57 AM Ilya Maximets > <mailto:i.maxim...@ovn.org> <mailto:i.maxim...@ovn.org > i.maxim...@ovn.org>>> wrote:
>> > >
>> > > On 4/16/20 11:00 PM, Ravi Kerur wrote:
>> > > > Hello OvS-DPDK team,
>> > > >
>> > > > We are expanding our usage of OvS-DPDK and want to use VF
>> port representors
>> > > > for one use-case. Going through the following document it
>> is unclear how
>> > > > this functionality can be achieved
>> > > >
>> > > > http://docs.openvswitch.org/en/latest/topics/dpdk/phy/
>> > > >
>> > > > I believe following things need to be configured before
>> configuring OvS, I
>> > > > am using Intel NICs for evaluation
>> > > >
>> > > > (1) Create VFs on Intel NICs(82599). This can only happen
>> when Intel NIC is
>> > > > bound to its respective kernel driver (ixgbe) via
>> > > >
>> > > > echo 2 > /sys/devices//sriov_numvfs
>> > > >
>> > > >
>> > > > It creates 2 VF interfaces bound to ixgbevf driver
>> > > >
>> > > >
>> > > > (2) Using driverctl, bind VF and PF interfaces to vfio-pci.
>> Moment PF
>> > > > device is bound to vfio-pci, VF interfaces vanish
>> > > >
>> > > >
>> > > > Question based on the OvS document shown above
>> > > >
>> > > >
>> > > > (1) Binding PF interface?
>> > > >
>> > > >
>> > > > ovs-vsctl add-port br0 dpdk-pf -- set Interface dpdk-pf
>> type=dpdk
>> > > > options:dpdk-devargs=:08:00.0
>> > > >
>> > > >
>> > > > What driver interface <:08:00.0> is bound to? igb_uio,
>> vfio-pci or
>> > > > kernel driver?
>> > >
>> > > I believe that it was tested with igb_uio driver, but I never
>> tried it myself.
>> > >
>> > > In order to have sr-iov configuration support with vfio-pci
>> driver you need
>> > > a brand new v5.7-rc1 kernel and DPDK changes that are not
>> merged yet:
>> > > https://patchwork.dpdk.org/project/dpdk/list/?series=9356
>> > > Not sure if it will work smoothly with OVS out of the box,
>> though.
>> > >
>> > >
>> > > Thanks Ilya for the link. Will look into it.
>> > >
>> > > Unfortunately igb_uio doesn't work either. Basics of creating
>> VF's out of PF and assigning them to DPDK driver itself is not working.
>> > > My understanding is
>> > > (1) In order to create VF's NIC should be bound to its kernel
>> driver. Cannot create VFs when NIC is bound to igb_uio or vfio-pci
>> > > (2) No mechanism exists to bind both PF and VF to igb_uio to use
>> this feature
>> > >
>> > > Output below shows what I am observing on :18:00.0
>> > >
>> > > (1) PCI device has PF and 1 VF, both assigned to kernel driver
>> > >
>> > > driverctl list-devices network
>> > >
>> > > :04:00.0 igb
>> > >
>> > > *:18:00.0 ixgbe*
>> > >
>> > > :18:00.1 ixgbe
>> > >
>> > > *:18:10.0 ixgbevf*
>> > >
>> > > :b3:00.0 vfio-pci [*]
>> > >
>> > > :b3:00.1 ixgbe
>> > >
>> > >
>> > > (2) Bind :18:00.0 to igb_uio, VF device is gone
>> > > # driverctl set-override :18:00.0 igb_uio
>> > >
>> > > #dr

Re: [ovs-dev] OVS DPDK VF port representors not working

2020-04-19 Thread Ravi Kerur
On Sun, Apr 19, 2020 at 6:14 AM Ilya Maximets  wrote:

> On 4/18/20 2:33 PM, Ravi Kerur wrote:
> >
> >
> > On Fri, Apr 17, 2020 at 9:57 AM Ilya Maximets  <mailto:i.maxim...@ovn.org>> wrote:
> >
> > On 4/16/20 11:00 PM, Ravi Kerur wrote:
> > > Hello OvS-DPDK team,
> > >
> > > We are expanding our usage of OvS-DPDK and want to use VF port
> representors
> > > for one use-case. Going through the following document it is
> unclear how
> > > this functionality can be achieved
> > >
> > > http://docs.openvswitch.org/en/latest/topics/dpdk/phy/
> > >
> > > I believe following things need to be configured before
> configuring OvS, I
> > > am using Intel NICs for evaluation
> > >
> > > (1) Create VFs on Intel NICs(82599). This can only happen when
> Intel NIC is
> > > bound to its respective kernel driver (ixgbe) via
> > >
> > > echo 2 > /sys/devices//sriov_numvfs
> > >
> > >
> > > It creates 2 VF interfaces bound to ixgbevf driver
> > >
> > >
> > > (2) Using driverctl, bind VF and PF interfaces to vfio-pci. Moment
> PF
> > > device is bound to vfio-pci, VF interfaces vanish
> > >
> > >
> > > Question based on the OvS document shown above
> > >
> > >
> > > (1) Binding PF interface?
> > >
> > >
> > > ovs-vsctl add-port br0 dpdk-pf -- set Interface dpdk-pf type=dpdk
> > > options:dpdk-devargs=:08:00.0
> > >
> > >
> > > What driver interface <:08:00.0> is bound to? igb_uio,
> vfio-pci or
> > > kernel driver?
> >
> > I believe that it was tested with igb_uio driver, but I never tried
> it myself.
> >
> > In order to have sr-iov configuration support with vfio-pci driver
> you need
> > a brand new v5.7-rc1 kernel and DPDK changes that are not merged yet:
> > https://patchwork.dpdk.org/project/dpdk/list/?series=9356
> > Not sure if it will work smoothly with OVS out of the box, though.
> >
> >
> > Thanks Ilya for the link. Will look into it.
> >
> > Unfortunately igb_uio doesn't work either. Basics of creating VF's out
> of PF and assigning them to DPDK driver itself is not working.
> > My understanding is
> > (1) In order to create VF's NIC should be bound to its kernel driver.
> Cannot create VFs when NIC is bound to igb_uio or vfio-pci
> > (2) No mechanism exists to bind both PF and VF to igb_uio to use this
> feature
> >
> > Output below shows what I am observing on :18:00.0
> >
> > (1) PCI device has PF and 1 VF, both assigned to kernel driver
> >
> > driverctl list-devices network
> >
> > :04:00.0 igb
> >
> > *:18:00.0 ixgbe*
> >
> > :18:00.1 ixgbe
> >
> > *:18:10.0 ixgbevf*
> >
> > :b3:00.0 vfio-pci [*]
> >
> > :b3:00.1 ixgbe
> >
> >
> > (2) Bind :18:00.0 to igb_uio, VF device is gone
> > # driverctl set-override :18:00.0 igb_uio
> >
> > #driverctl list-devices network
> >
> > :04:00.0 igb
> >
> > *:18:00.0 igb_uio [*]*
> >
> > :18:00.1 ixgbe
> >
> > :b3:00.0 vfio-pci [*]
> >
> > :b3:00.1 ixgbe
> >
> >
> > (3) Try to create VF when bound to igb_uio
> >
> >
> > echo 1 > /sys/bus/pci/devices/\:18\:00.0/sriov_numvfs
> >
> > bash: echo: write error: No such file or directory
>
> OVS and DPDK docs both says that knob should be "max_vfs", not
> "sriov_numvfs".
> I didn't test, but looking at the code of igb_uio driver it actually
> creates
> this sysfs entry.
>
>
Thanks for your kind help. My mistake. On Ubuntu max_vfs is created in

/sys/devices/pci:16/:16:02.0/:18:00.0/max_vfs instead of usual

/sys/bus/pci/devices/\:18\:00.0/

 I am able to create VF's when PF is attached to igb_uio.
When adding dpdk-pf port to bridge I get following errors (OvS 2.13.90,
DPDK 19.11). Please note I have started with empty conf.db in OvS.

driverctl list-devices network

:04:00.0 igb

:18:00.0 igb_uio [*]

:18:00.1 ixgbe

:18:10.0 vfio-pci [*]

:18:10.2 vfio-pci [*]

:b3:00.0 vfio-pci [*]

:b3:00.1 ixgbe

ovs-vsctl add-br br-phy -- set bridge br-phy datapath_type=netdev

ovs-vsctl add-port br-phy dpdk-pf -- set Interface dpdk-pf type=dpdk
options:dpdk-devargs=:18:00.0

ovs-v

Re: [ovs-dev] OVS DPDK VF port representors not working

2020-04-18 Thread Ravi Kerur
On Fri, Apr 17, 2020 at 9:57 AM Ilya Maximets  wrote:

> On 4/16/20 11:00 PM, Ravi Kerur wrote:
> > Hello OvS-DPDK team,
> >
> > We are expanding our usage of OvS-DPDK and want to use VF port
> representors
> > for one use-case. Going through the following document it is unclear how
> > this functionality can be achieved
> >
> > http://docs.openvswitch.org/en/latest/topics/dpdk/phy/
> >
> > I believe following things need to be configured before configuring OvS,
> I
> > am using Intel NICs for evaluation
> >
> > (1) Create VFs on Intel NICs(82599). This can only happen when Intel NIC
> is
> > bound to its respective kernel driver (ixgbe) via
> >
> > echo 2 > /sys/devices//sriov_numvfs
> >
> >
> > It creates 2 VF interfaces bound to ixgbevf driver
> >
> >
> > (2) Using driverctl, bind VF and PF interfaces to vfio-pci. Moment PF
> > device is bound to vfio-pci, VF interfaces vanish
> >
> >
> > Question based on the OvS document shown above
> >
> >
> > (1) Binding PF interface?
> >
> >
> > ovs-vsctl add-port br0 dpdk-pf -- set Interface dpdk-pf type=dpdk
> > options:dpdk-devargs=:08:00.0
> >
> >
> > What driver interface <:08:00.0> is bound to? igb_uio, vfio-pci or
> > kernel driver?
>
> I believe that it was tested with igb_uio driver, but I never tried it
> myself.
>
> In order to have sr-iov configuration support with vfio-pci driver you need
> a brand new v5.7-rc1 kernel and DPDK changes that are not merged yet:
> https://patchwork.dpdk.org/project/dpdk/list/?series=9356
> Not sure if it will work smoothly with OVS out of the box, though.
>

Thanks Ilya for the link. Will look into it.

Unfortunately igb_uio doesn't work either. Basics of creating VF's out of
PF and assigning them to DPDK driver itself is not working.
My understanding is
(1) In order to create VF's NIC should be bound to its kernel driver.
Cannot create VFs when NIC is bound to igb_uio or vfio-pci
(2) No mechanism exists to bind both PF and VF to igb_uio to use this
feature

Output below shows what I am observing on :18:00.0

(1) PCI device has PF and 1 VF, both assigned to kernel driver

driverctl list-devices network

:04:00.0 igb

*:18:00.0 ixgbe*

:18:00.1 ixgbe

*:18:10.0 ixgbevf*

:b3:00.0 vfio-pci [*]

:b3:00.1 ixgbe

(2) Bind :18:00.0 to igb_uio, VF device is gone
# driverctl set-override :18:00.0 igb_uio

# driverctl list-devices network

:04:00.0 igb

*:18:00.0 igb_uio [*]*

:18:00.1 ixgbe

:b3:00.0 vfio-pci [*]

:b3:00.1 ixgbe


(3) Try to create VF when bound to igb_uio


echo 1 > /sys/bus/pci/devices/\:18\:00.0/sriov_numvfs

bash: echo: write error: No such file or directory


(4) Unset :18:00.0 to kernel driver, can create VF


# driverctl unset-override :18:00.0

# echo 1 > /sys/bus/pci/devices/\:18\:00.0/sriov_numvfs

# driverctl list-devices network

:04:00.0 igb

*:18:00.0 ixgbe*

:18:00.1 ixgbe

*:18:10.0 ixgbevf*

:b3:00.0 vfio-pci [*]

:b3:00.1 ixgbe

Without binding both PF and VF to userspace drivers to use DPDK PMD it is
not clear to me how this functionality will work?

>
> >
> >
> > (2) VF interface to representor connection, does representor=[3]
> represent
> > VF device 3?
> >
> >
> > ovs-vsctl add-port br0 dpdk-rep3 -- set Interface dpdk-rep3 type=dpdk
> > options:dpdk-devargs=:08:00.0,representor=[3]
> >
> > ovs-vsctl add-port br0 dpdk-rep5 -- set Interface dpdk-rep5 type=dpdk
> > options:dpdk-devargs=:08:00.0,representor=[5]
> >
> >
> > Looking into linked DPDK document within OvS is confusing as well.
> >
> >
> > Kindly let me know what I need to do for the setup?
> >
> >
> > Thanks,
> >
> > Ravi
> > ___
> > dev mailing list
> > d...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
> >
>
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] OVS DPDK VF port representors not working

2020-04-16 Thread Ravi Kerur
Hello OvS-DPDK team,

We are expanding our usage of OvS-DPDK and want to use VF port representors
for one use-case. Going through the following document it is unclear how
this functionality can be achieved

http://docs.openvswitch.org/en/latest/topics/dpdk/phy/

I believe following things need to be configured before configuring OvS, I
am using Intel NICs for evaluation

(1) Create VFs on Intel NICs(82599). This can only happen when Intel NIC is
bound to its respective kernel driver (ixgbe) via

echo 2 > /sys/devices//sriov_numvfs


It creates 2 VF interfaces bound to ixgbevf driver


(2) Using driverctl, bind VF and PF interfaces to vfio-pci. Moment PF
device is bound to vfio-pci, VF interfaces vanish


Question based on the OvS document shown above


(1) Binding PF interface?


ovs-vsctl add-port br0 dpdk-pf -- set Interface dpdk-pf type=dpdk
options:dpdk-devargs=:08:00.0


What driver interface <:08:00.0> is bound to? igb_uio, vfio-pci or
kernel driver?



(2) VF interface to representor connection, does representor=[3] represent
VF device 3?


ovs-vsctl add-port br0 dpdk-rep3 -- set Interface dpdk-rep3 type=dpdk
options:dpdk-devargs=:08:00.0,representor=[3]

ovs-vsctl add-port br0 dpdk-rep5 -- set Interface dpdk-rep5 type=dpdk
options:dpdk-devargs=:08:00.0,representor=[5]


Looking into linked DPDK document within OvS is confusing as well.


Kindly let me know what I need to do for the setup?


Thanks,

Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OVS and DPI(Classifiers)

2020-04-13 Thread Ravi Kerur
On Sun, Apr 12, 2020 at 1:44 PM William Tu  wrote:

> On Sat, Apr 11, 2020 at 10:20 AM Ravi Kerur  wrote:
> >
> >
> >
> > On Thu, Apr 9, 2020 at 8:45 PM William Tu  wrote:
> >>
> >> On Wed, Jul 17, 2019 at 4:25 PM Ravi Kerur  wrote:
> >> >
> >> > Hi,
> >> >
> >> > I am sending this email to gauge if OVS team or community using OVS
> would
> >> > be interested in this effort. I read some discussions which had
> happened
> >> > couple of years back with OVS and Qosmos integration and at least it
> looked
> >> > like OVS team didn't approve of it. I just want to restart it but with
> >> > OVS+DPDK and all open source libraries and check if it makes sense.
> >> >
> >> Hi Ravi,
> >>
> >> I'm interested in trying it out. Where can I find your code?
> >>
> >> Thanks
> >> William
> >>
> > Hi William,
> >
> > Is it out of personal interest or a specific problem you want to
> address? I need to remove company IP and I can make it available.
> >
> Both.
>
> I'm thinking about adding a way for OVS to integrate with other
> software, ex: layer7 packet
> processing such as ntop, or qosmos. Currently I'm studying what's the
> right interface to expose
> to the outside 3rd party software. There was SoftFlow paper here:
> https://www.usenix.org/node/196181
> So I'm interested in how Qosmos uses OVS. But if it has company IP
> issue, then I will try my self.
>
>
I intent to opensource the code that was developed as part of this effort.
Will keep you posted.

Thanks,
Ravi


> Regards,
> William
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS DPDK crash when HPET timer enabled

2020-04-13 Thread Ravi Kerur
On Sun, Apr 12, 2020 at 5:05 AM Tonghao Zhang 
wrote:

> On Sun, Apr 12, 2020 at 7:57 AM Ravi Kerur  wrote:
> >
> > Hello OvS DPDK team,
> >
> > I am using OvS 2.13.90 and DPDK 19.11 and wanted to use HPET timer
> instead
> > of invariant TSC.
> >
> > Enabled CONFIG_RTE_LIBEAL_USE_HPET=y in DPDK
> >
> > Kernel has
> > CONFIG_HPET_TIMER=y
> > CONFIG_HPET_EMULATE_RTC=y
> > CONFIG_HPET=y
> > CONFIG_HPET_MMAP=y
> > CONFIG_HPET_MMAP_DEFAULT=y
> >
> > cat /sys/devices/system/clocksource/clocksource0/current_clocksource
> > tsc
> > # cat /sys/devices/system/clocksource/clocksource0/available_clocksource
> > tsc hpet acpi_pm
> >
> > OvS crashes at
> >
> > gdb ovsdb-server /core
> > GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
> > Copyright (C) 2018 Free Software Foundation, Inc.
> > License GPLv3+: GNU GPL version 3 or later <
> http://gnu.org/licenses/gpl.html
> > >
> > This is free software: you are free to change and redistribute it.
> > There is NO WARRANTY, to the extent permitted by law.  Type "show
> copying"
> > and "show warranty" for details.
> > This GDB was configured as "x86_64-linux-gnu".
> > Type "show configuration" for configuration details.
> > For bug reporting instructions, please see:
> > <http://www.gnu.org/software/gdb/bugs/>.
> > Find the GDB manual and other documentation resources online at:
> > <http://www.gnu.org/software/gdb/documentation/>.
> > For help, type "help".
> > Type "apropos word" to search for commands related to "word"...
> > Reading symbols from ovsdb-server...done.
> > [New LWP 9729]
> > [Thread debugging using libthread_db enabled]
> > Using host libthread_db library
> "/lib/x86_64-linux-gnu/libthread_db.so.1".
> > Core was generated by `ovsdb-server /usr/local/etc/openvswitch/conf.db
> > -vconsole:emer -vsyslog:err -vf'.
> > Program terminated with signal SIGSEGV, Segmentation fault.
> > #0  0x560fc6db8ac1 in rte_get_hpet_cycles ()
> Hi,
> This is a bug on dpdk, NOT ovs.
> I guess that your kernel does't support getentropy which supported in
> 3.17 and your cpu don't support rdseed.
> and that cause a dpdk bug. To workaround, you change: Not tested, hope
> it's useful for you
>
>
You are correct CPU doesn't support RDSEED instruction but RDRAND is
supported.

It's a RT kernel based on 4.19 + RT patches.

Setting CONFIG_RTE_LIBEAL_USE_HPET=n which is the default,'Invariant TSC'
will be used. However, I want to use HPET so should I check with DPDK dev?

Thanks,
Ravi



> diff --git a/lib/librte_eal/linux/eal_timer.c
> b/lib/librte_eal/linux/eal_timer.c
> index a904a8297cd2..4067e46da534 100644
> --- a/lib/librte_eal/linux/eal_timer.c
> +++ b/lib/librte_eal/linux/eal_timer.c
> @@ -26,7 +26,7 @@
>  #include "eal_private.h"
>  #include "eal_internal_cfg.h"
>
> -enum timer_source eal_timer_source = EAL_TIMER_HPET;
> +enum timer_source eal_timer_source = EAL_TIMER_TSC;
>
>  #ifdef RTE_LIBEAL_USE_HPET
>
>
> > (gdb) bt
> > #0  0x560fc6db8ac1 in rte_get_hpet_cycles ()
> > #1  0x560fc6c482b0 in rte_rand_init ()
> > #2  0x560fc6e125bd in __libc_csu_init ()
> > #3  0x7f5e1f930b28 in __libc_start_main (main=0x560fc6c45940 ,
> > argc=14, argv=0x7fff61ae5088, init=0x560fc6e12570 <__libc_csu_init>,
> > fini=, rtld_fini=,
> > stack_end=0x7fff61ae5078) at ../csu/libc-start.c:266
> > #4  0x560fc6c485da in _start ()
> > (gdb) quit
> >
> > RTE_INIT(rte_rand_init)
> > {
> > ...
> > }
> >
> > rte_rand_init is defined as initializer, following diffs won't help,
> >
> > diff --git a/lib/dpdk.c b/lib/dpdk.c
> > index 31450d470..f3d3989c8 100644
> > --- a/lib/dpdk.c
> > +++ b/lib/dpdk.c
> > @@ -405,6 +405,12 @@ dpdk_init__(const struct smap *ovs_other_config)
> >  if (result < 0) {
> >  VLOG_EMER("Unable to initialize DPDK: %s",
> > ovs_strerror(rte_errno));
> >  return false;
> > +} else {
> > +#ifdef RTE_LIBEAL_USE_HPET
> > +if (rte_eal_hpet_init(1) < 0) {
> > +VLOG_ERR("HPET is not enabled, using TSC as default
> timer\n");
> > +}
> > +#endif
> >  }
> >
> >  if (VLOG_IS_DBG_ENABLED()) {
> >
> > Kindly let me know your inputs on how to overcome this issue.
> >
> > Thanks,
> > Ravi
> > ___
> > dev mailing list
> > d...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
>
>
> --
> Best regards, Tonghao
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] OvS DPDK crash when HPET timer enabled

2020-04-11 Thread Ravi Kerur
Hello OvS DPDK team,

I am using OvS 2.13.90 and DPDK 19.11 and wanted to use HPET timer instead
of invariant TSC.

Enabled CONFIG_RTE_LIBEAL_USE_HPET=y in DPDK

Kernel has
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_HPET_MMAP_DEFAULT=y

cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc
# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm

OvS crashes at

gdb ovsdb-server /core
GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
.
Find the GDB manual and other documentation resources online at:
.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ovsdb-server...done.
[New LWP 9729]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `ovsdb-server /usr/local/etc/openvswitch/conf.db
-vconsole:emer -vsyslog:err -vf'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x560fc6db8ac1 in rte_get_hpet_cycles ()
(gdb) bt
#0  0x560fc6db8ac1 in rte_get_hpet_cycles ()
#1  0x560fc6c482b0 in rte_rand_init ()
#2  0x560fc6e125bd in __libc_csu_init ()
#3  0x7f5e1f930b28 in __libc_start_main (main=0x560fc6c45940 ,
argc=14, argv=0x7fff61ae5088, init=0x560fc6e12570 <__libc_csu_init>,
fini=, rtld_fini=,
stack_end=0x7fff61ae5078) at ../csu/libc-start.c:266
#4  0x560fc6c485da in _start ()
(gdb) quit

RTE_INIT(rte_rand_init)
{
...
}

rte_rand_init is defined as initializer, following diffs won't help,

diff --git a/lib/dpdk.c b/lib/dpdk.c
index 31450d470..f3d3989c8 100644
--- a/lib/dpdk.c
+++ b/lib/dpdk.c
@@ -405,6 +405,12 @@ dpdk_init__(const struct smap *ovs_other_config)
 if (result < 0) {
 VLOG_EMER("Unable to initialize DPDK: %s",
ovs_strerror(rte_errno));
 return false;
+} else {
+#ifdef RTE_LIBEAL_USE_HPET
+if (rte_eal_hpet_init(1) < 0) {
+VLOG_ERR("HPET is not enabled, using TSC as default timer\n");
+}
+#endif
 }

 if (VLOG_IS_DBG_ENABLED()) {

Kindly let me know your inputs on how to overcome this issue.

Thanks,
Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OVS and DPI(Classifiers)

2020-04-11 Thread Ravi Kerur
On Thu, Apr 9, 2020 at 8:45 PM William Tu  wrote:

> On Wed, Jul 17, 2019 at 4:25 PM Ravi Kerur  wrote:
> >
> > Hi,
> >
> > I am sending this email to gauge if OVS team or community using OVS would
> > be interested in this effort. I read some discussions which had happened
> > couple of years back with OVS and Qosmos integration and at least it
> looked
> > like OVS team didn't approve of it. I just want to restart it but with
> > OVS+DPDK and all open source libraries and check if it makes sense.
> >
> Hi Ravi,
>
> I'm interested in trying it out. Where can I find your code?
>
> Thanks
> William
>
> Hi William,

Is it out of personal interest or a specific problem you want to address? I
need to remove company IP and I can make it available.

Thanks,
Ravi

> I have integrated open source classifiers(aka DPI) nDPI and JOY (from
> > Cisco) libraries into OVS+DPDK. Salient points
> >
> > (1) Follows same model as OVS+DPDK integration i.e. user can choose
> > classifiers with '--with-ndpi' and '--with-joy' option during
> configuration
> > (2) nDPI and JOY are launched on non-PMD cores so the data path
> performance
> > is not impacted
> > (3) Packets coming into DPDK Rx path is reference counted and sent to
> nDPI
> > and JOY via intercore rings
> > (4) nDPI and JOY results are then made available to the control plane to
> > act on it
> > (5) Tested on AWS t3.2xlarge and both UDP and TCP hits 5Gbps for 512 and
> > above packet size
> >
> > Thanks,
> > Ravi
> > ___
> > dev mailing list
> > d...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS DPDK vector pmd drivers

2020-04-11 Thread Ravi Kerur
Hi William,

On Fri, Apr 10, 2020 at 7:06 AM William Tu  wrote:

> On Thu, Apr 09, 2020 at 02:14:26PM -0700, Ravi Kerur wrote:
> > Hi OvS DPDK team,
> >
> > I am looking at ixgbe_set_rx_function and ixgbe_set_tx_function and would
> > like to enable vectorized packet handling. Looking at
> ixgbe_set_rx_function
>
> Do you mean this "27.1. Vector PMD for IXGBE"?
> https://doc.dpdk.org/guides/nics/ixgbe.html
>
>
Yes, from the documentation p.o.v this is what I am referring to.

> I see that it depends on device configuration and other parameters like
> > descriptors, burst sze to enable vectorized Rx and Tx. How do I check
> which
> > Tx and Rx OvS is using for processing?
>
> Hi Ravi,
>
> Do you mean whether OVS-DPDK uses this:
>
> /*
>  * Set the non-LRO scattered callback: there are Vector and
>  * single allocation versions.
>  */
> if (adapter->rx_vec_allowed) {
> PMD_INIT_LOG(DEBUG, "Using Vector Scattered Rx "
> "callback (port=%d).",
>  dev->data->port_id);
>
> I guess if your NIC and CPU support, it should be automatically
> enabled.
>

 This is one case of Scattered Rx. Code. Which function gets selected
depends on variables dev->data->lro, dev->data->scattered_rx,
adapter->rx_vec_allowed, adapter->rx_bulk_alloc_allowed. Variables
set/unset depends on descriptors, thresholds and other parameters. Similar
logic is present for Tx as well. I have both 82599 and x710 NICs to it
applies to both IXGBE and I40E drivers.

How do I switch between different Tx and Rx functions in order to select an
optimal one? Configurations other than queues/descriptor which can dictate
a particular Rx and Tx?

Thanks,
Ravi



> William
> >
> > Currently I use descriptors(4096), queues(2) and offloads disabled for
> > ports so would like to know what configuration changes I need to do to
> > switch between processing types?
> >
> > Thanks,
> > Ravi
> > ___
> > dev mailing list
> > d...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] OvS DPDK vector pmd drivers

2020-04-09 Thread Ravi Kerur
Hi OvS DPDK team,

I am looking at ixgbe_set_rx_function and ixgbe_set_tx_function and would
like to enable vectorized packet handling. Looking at ixgbe_set_rx_function
I see that it depends on device configuration and other parameters like
descriptors, burst sze to enable vectorized Rx and Tx. How do I check which
Tx and Rx OvS is using for processing?

Currently I use descriptors(4096), queues(2) and offloads disabled for
ports so would like to know what configuration changes I need to do to
switch between processing types?

Thanks,
Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Issue with OvS 2.13.90 and DPDK 19.11

2020-02-04 Thread Ravi Kerur
Thanks David and Flavio. Patch worked like a charm.

On Tue, Feb 4, 2020 at 3:05 PM Ravi Kerur  wrote:

> David/Flavio, I will try the patch and let you know. Thanks for the quick
> help.
>
> Thanks.
>
> On Tue, Feb 4, 2020 at 12:35 PM Flavio Leitner  wrote:
>
>> On Tue, Feb 04, 2020 at 08:41:37PM +0100, David Marchand wrote:
>> > On Tue, Feb 4, 2020 at 7:07 PM Ravi Kerur  wrote:
>> > > *2020-02-04T17:42:52.976Z|00084|dpdk|ERR|Ethdev port_id=0 requested Tx
>> > > offloads 0x2a doesn't match Tx offloads capabilities 0xe in
>> > > rte_eth_dev_configure()*
>> >
>> > I'd say we have a little issue with the introduction of TSO.
>> > How about:
>>
>> Yeah, looks like the card support IPv4 and TCP cksum but not TSO yet.
>> The patch below looks good to me.
>> Thanks
>> fbl
>>
>> >
>> > diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
>> > index d6c87f8d4..4888d1cae 100644
>> > --- a/lib/netdev-dpdk.c
>> > +++ b/lib/netdev-dpdk.c
>> > @@ -1132,7 +1132,7 @@ dpdk_eth_dev_init(struct netdev_dpdk *dev)
>> >  dev->hw_ol_features &= ~NETDEV_RX_HW_SCATTER;
>> >  }
>> >
>> > -if (info.tx_offload_capa & tx_tso_offload_capa) {
>> > +if ((info.tx_offload_capa & tx_tso_offload_capa) ==
>> tx_tso_offload_capa) {
>> >  dev->hw_ol_features |= NETDEV_TX_TSO_OFFLOAD;
>> >  } else {
>> >  dev->hw_ol_features &= ~NETDEV_TX_TSO_OFFLOAD;
>> >
>> >
>> >
>> > --
>> > David Marchand
>> >
>> > ___
>> > dev mailing list
>> > d...@openvswitch.org
>> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>>
>> --
>> fbl
>>
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Issue with OvS 2.13.90 and DPDK 19.11

2020-02-04 Thread Ravi Kerur
David/Flavio, I will try the patch and let you know. Thanks for the quick
help.

Thanks.

On Tue, Feb 4, 2020 at 12:35 PM Flavio Leitner  wrote:

> On Tue, Feb 04, 2020 at 08:41:37PM +0100, David Marchand wrote:
> > On Tue, Feb 4, 2020 at 7:07 PM Ravi Kerur  wrote:
> > > *2020-02-04T17:42:52.976Z|00084|dpdk|ERR|Ethdev port_id=0 requested Tx
> > > offloads 0x2a doesn't match Tx offloads capabilities 0xe in
> > > rte_eth_dev_configure()*
> >
> > I'd say we have a little issue with the introduction of TSO.
> > How about:
>
> Yeah, looks like the card support IPv4 and TCP cksum but not TSO yet.
> The patch below looks good to me.
> Thanks
> fbl
>
> >
> > diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
> > index d6c87f8d4..4888d1cae 100644
> > --- a/lib/netdev-dpdk.c
> > +++ b/lib/netdev-dpdk.c
> > @@ -1132,7 +1132,7 @@ dpdk_eth_dev_init(struct netdev_dpdk *dev)
> >  dev->hw_ol_features &= ~NETDEV_RX_HW_SCATTER;
> >  }
> >
> > -if (info.tx_offload_capa & tx_tso_offload_capa) {
> > +if ((info.tx_offload_capa & tx_tso_offload_capa) ==
> tx_tso_offload_capa) {
> >  dev->hw_ol_features |= NETDEV_TX_TSO_OFFLOAD;
> >  } else {
> >  dev->hw_ol_features &= ~NETDEV_TX_TSO_OFFLOAD;
> >
> >
> >
> > --
> > David Marchand
> >
> > ___
> > dev mailing list
> > d...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
> --
> fbl
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] Issue with OvS 2.13.90 and DPDK 19.11

2020-02-04 Thread Ravi Kerur
Hi,

I was using OvS 2.12.90 and DPDK 18.11 and everything was working fine. I
upgraded to OvS 2.13.90 and DPDK 19.11 and DPDK initialization failed for
interfaces. Kindly let me know if I need to make any changes to the
configuration?

DPDK device initialization failed with

*2020-02-04T17:42:52.976Z|00084|dpdk|ERR|Ethdev port_id=0 requested Tx
offloads 0x2a doesn't match Tx offloads capabilities 0xe in
rte_eth_dev_configure()*

*2020-02-04T17:42:52.976Z|00085|netdev_dpdk|WARN|Interface dpdk-eth0
eth_dev setup error Invalid argument*

*2020-02-04T17:42:52.976Z|00086|netdev_dpdk|ERR|Interface dpdk-eth0(rxq:1
txq:3 lsc interrupt mode:false) configure error: Invalid argument*


Complete logs below.

*ovs-vsctl get Open_vSwitch . dpdk_initialized*

*true*

*root@ravi-vcpe-02-alpha:/home/rkerur# ovs-vsctl get Open_vSwitch .
dpdk_version*

*"DPDK 19.11.0"*

*root@ravi-vcpe-02-alpha:/home/rkerur# ovs-vswitchd --version*

*ovs-vswitchd (Open vSwitch) 2.13.90*

*DPDK 19.11.0*

 *dpdk-devbind.py -s*


*Network devices using DPDK-compatible driver*

**

*:00:06.0 'Elastic Network Adapter (ENA) ec20' drv=igb_uio unused=ena*


ovs-vsctl show

59c0e801-090a-486c-956a-1ece34821c3f

Bridge br0

datapath_type: netdev

Port br0

Interface br0

type: internal

Port dpdk-eth0

Interface dpdk-eth0

type: dpdk

options: {dpdk-devargs=":00:06.0", n_rxq_desc="256",
n_txq_desc="256"}

error: "could not add network device dpdk-eth0 to ofproto
(Invalid argument)"

ovs_version: "2.13.90"


cat /usr/local/var/log/openvswitch/ovs-vswitchd.log

2020-02-04T17:42:44.257Z|1|vlog|INFO|opened log file
/usr/local/var/log/openvswitch/ovs-vswitchd.log

2020-02-04T17:42:44.263Z|2|ovs_numa|INFO|Discovered 8 CPU cores on NUMA
node 0

2020-02-04T17:42:44.263Z|3|ovs_numa|INFO|Discovered 1 NUMA nodes and 8
CPU cores

2020-02-04T17:42:44.263Z|4|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
connecting...

2020-02-04T17:42:44.263Z|5|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
connected

2020-02-04T17:42:44.265Z|6|dpdk|INFO|Using DPDK 19.11.0

2020-02-04T17:42:44.265Z|7|dpdk|INFO|DPDK Enabled - initializing...

2020-02-04T17:42:44.265Z|8|dpdk|INFO|No vhost-sock-dir provided -
defaulting to /usr/local/var/run/openvswitch

2020-02-04T17:42:44.265Z|9|dpdk|INFO|IOMMU support for
vhost-user-client disabled.

2020-02-04T17:42:44.265Z|00010|dpdk|INFO|POSTCOPY support for
vhost-user-client disabled.

2020-02-04T17:42:44.265Z|00011|dpdk|INFO|Per port memory for DPDK devices
disabled.

2020-02-04T17:42:44.265Z|00012|dpdk|INFO|EAL ARGS: ovs-vswitchd
--file-prefix=host -c 0xF0 --huge-dir /dev/hugepages_1G --socket-mem 16,0
--socket-limit 16,0.

2020-02-04T17:42:44.268Z|00013|dpdk|INFO|EAL: Detected 8 lcore(s)

2020-02-04T17:42:44.268Z|00014|dpdk|INFO|EAL: Detected 1 NUMA nodes

2020-02-04T17:42:44.271Z|00015|dpdk|INFO|EAL: Multi-process socket
/var/run/dpdk/host/mp_socket

2020-02-04T17:42:44.275Z|00016|dpdk|INFO|EAL: Selected IOVA mode 'PA'

2020-02-04T17:42:44.276Z|00017|dpdk|INFO|EAL: Probing VFIO support...

2020-02-04T17:42:50.801Z|00018|dpdk|INFO|EAL: PCI device :00:05.0 on
NUMA socket -1

2020-02-04T17:42:50.801Z|00019|dpdk|WARN|EAL:   Invalid NUMA socket,
default to 0

2020-02-04T17:42:50.801Z|00020|dpdk|INFO|EAL:   probe driver: 1d0f:ec20
net_ena

2020-02-04T17:42:50.801Z|00021|dpdk|INFO|EAL: PCI device :00:06.0 on
NUMA socket -1

2020-02-04T17:42:50.801Z|00022|dpdk|WARN|EAL:   Invalid NUMA socket,
default to 0

2020-02-04T17:42:50.801Z|00023|dpdk|INFO|EAL:   probe driver: 1d0f:ec20
net_ena

2020-02-04T17:42:50.854Z|00024|dpdk|INFO|EAL: PCI device :00:07.0 on
NUMA socket -1

2020-02-04T17:42:50.854Z|00025|dpdk|WARN|EAL:   Invalid NUMA socket,
default to 0

2020-02-04T17:42:50.854Z|00026|dpdk|INFO|EAL:   probe driver: 1d0f:ec20
net_ena

2020-02-04T17:42:50.907Z|00027|dpdk|INFO|EAL: PCI device :00:08.0 on
NUMA socket -1

2020-02-04T17:42:50.907Z|00028|dpdk|WARN|EAL:   Invalid NUMA socket,
default to 0

2020-02-04T17:42:50.907Z|00029|dpdk|INFO|EAL:   probe driver: 1d0f:ec20
net_ena

2020-02-04T17:42:50.909Z|00030|dpdk|INFO|DPDK Enabled - initialized

2020-02-04T17:42:52.869Z|00058|ofproto_dpif|INFO|netdev@ovs-netdev:
Datapath supports recirculation

2020-02-04T17:42:52.869Z|00059|ofproto_dpif|INFO|netdev@ovs-netdev: VLAN
header stack length probed as 1

2020-02-04T17:42:52.869Z|00060|ofproto_dpif|INFO|netdev@ovs-netdev: MPLS
label stack length probed as 3

2020-02-04T17:42:52.869Z|00061|ofproto_dpif|INFO|netdev@ovs-netdev:
Datapath supports truncate action

2020-02-04T17:42:52.869Z|00062|ofproto_dpif|INFO|netdev@ovs-netdev:
Datapath supports unique flow ids

2020-02-04T17:42:52.869Z|00063|ofproto_dpif|INFO|netdev@ovs-netdev:
Datapath supports clone action


[ovs-dev] Poor performance OVS_DPDK 2.12.90 and 18.11.2

2019-09-11 Thread Ravi Kerur
Hello OVS/DPDK team,

I am using OVS+DPDK for some of my work and using 2.12.90 and 18.11.2
versions respectively. I  ran some performance tests (iperf3 for TCP and
UDP) on a c5 4xlarge AWS instance. I am supposed to get 10Gbps, however,
for TCP streams I get 2.4Gbps and UDP < 1Gbps.

Ethernet device is AWS ENA so I am using ENA PMD driver from 18.11.2.

Some output from OVS are shown below. Kindly let me know what other stats I
can look for to debug this issue.

*ovs-vsctl show*

6a4ac8cb-295e-4312-8f64-81ad0f3f6a3e

Bridge br0

datapath_type: netdev

Port br0

Interface br0

type: internal

Port dpdk-eth0

Interface dpdk-eth0

type: dpdk

options: {dpdk-devargs=":00:06.0", n_rxq_desc="1024",
n_txq_desc="1024"}

ovs_version: "2.12.90"

*ovs-appctl dpif-netdev/pmd-rxq-show*

pmd thread numa_id 0 core_id 4:

  isolated : false

pmd thread numa_id 0 core_id 5:

  isolated : false

pmd thread numa_id 0 core_id 6:

  isolated : false

  port: dpdk-eth0 queue-id:  0 (enabled)   pmd usage:  0 %

pmd thread numa_id 0 core_id 7:

  isolated : false

root@c5ravi-vcpe2nic-01-beta:/home/rkerur/ovs# *cat /proc/cmdline *

BOOT_IMAGE=/boot/vmlinuz-4.15.0-55-generic
root=UUID=2fb8bdd8-490f-412e-85fa-7e93741d9b9f ro audit=1 nofb console=tty0
console=ttyS0 net.ifnames=0 biosdevname=0 audit=1 clocksource=tsc
isolcpus=4-15 nohz_full=4-15 rcu_nocbs=4-15 intel_pstate=disable iommu=pt
intel_iommu=on default_hugepagesz=1G hugepagesz=1G hugepages=16

ovs-appctl dpif-netdev/pmd-stats-show

pmd thread numa_id 0 core_id 4:

  packets received: 0

  packet recirculations: 0

  avg. datapath passes per packet: 0.00

  emc hits: 0

  smc hits: 0

  megaflow hits: 0

  avg. subtable lookups per megaflow hit: 0.00

  miss with success upcall: 0

  miss with failed upcall: 0

  avg. packets per output batch: 0.00

pmd thread numa_id 0 core_id 5:

  packets received: 0

  packet recirculations: 0

  avg. datapath passes per packet: 0.00

  emc hits: 0

  smc hits: 0

  megaflow hits: 0

  avg. subtable lookups per megaflow hit: 0.00

  miss with success upcall: 0

  miss with failed upcall: 0

  avg. packets per output batch: 0.00

pmd thread numa_id 0 core_id 6:

  packets received: 8147132

  packet recirculations: 0

  avg. datapath passes per packet: 1.00

  emc hits: 8144921

  smc hits: 0

  megaflow hits: 2190

  avg. subtable lookups per megaflow hit: 1.14

  miss with success upcall: 21

  miss with failed upcall: 0

  avg. packets per output batch: 1.00

  idle cycles: 2282313484912 (91.98%)

  processing cycles: 199103025970 (8.02%)

  avg cycles per packet: 304575.46 (2481416510882/8147132)

  avg processing cycles per packet: 24438.42 (199103025970/8147132)

pmd thread numa_id 0 core_id 7:

  packets received: 0

  packet recirculations: 0

  avg. datapath passes per packet: 0.00

  emc hits: 0

  smc hits: 0

  megaflow hits: 0

  avg. subtable lookups per megaflow hit: 0.00

  miss with success upcall: 0

  miss with failed upcall: 0

  avg. packets per output batch: 0.00

main thread:

  packets received: 4059807

  packet recirculations: 0

  avg. datapath passes per packet: 1.00

  emc hits: 4059017

  smc hits: 0

  megaflow hits: 769

  avg. subtable lookups per megaflow hit: 1.29

  miss with success upcall: 21

  miss with failed upcall: 0

  avg. packets per output batch: 1.00

*ovs-ofctl dump-ports-desc br0*

OFPST_PORT_DESC reply (xid=0x2):

 1(dpdk-eth0): addr:02:aa:d6:8d:9b:b0

 config: 0

 state:  0

 speed: 0 Mbps now, 0 Mbps max

 LOCAL(br0): addr:02:aa:d6:8d:9b:b0

 config: 0

 state:  0

 current:10MB-FD COPPER

 speed: 10 Mbps now, 0 Mbps max

root@c5ravi-vcpe2nic-01-beta:/home/rkerur/ovs# *ovs-ofctl dump-ports br0*

OFPST_PORT reply (xid=0x2): 2 ports

  port LOCAL: rx pkts=24942892, bytes=1679652210, drop=0, errs=0, frame=0,
over=0, crc=0

   tx pkts=50260268, bytes=424185450648, drop=0, errs=0, coll=0

  port  "dpdk-eth0": rx pkts=14510973, bytes=123910211476, drop=0, errs=0,
frame=?, over=?, crc=?

   tx pkts=7304661, bytes=482290873, drop=0, errs=0, coll=?

Thanks,
Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Building OVS DPDK debian package

2019-07-23 Thread Ravi Kerur
On Mon, Jul 22, 2019 at 10:36 AM Ben Pfaff  wrote:

> On Sat, Jul 20, 2019 at 09:33:47AM -0700, Ravi Kerur wrote:
> > On Wed, Jul 17, 2019 at 4:47 PM Ben Pfaff  wrote:
> >
> > > On Wed, Jul 17, 2019 at 04:15:06PM -0700, Ravi Kerur wrote:
> > > > On Wed, Jul 17, 2019 at 11:06 AM Ben Pfaff  wrote:
> > > >
> > > > > On Wed, Jul 17, 2019 at 10:03:06AM -0700, Ravi Kerur wrote:
> > > > > > I am going through OVS 2.11.90 document to build Debian package
> on
> > > Ubuntu
> > > > > > 16.04.4.
> > > > > >
> > > > > >
> http://docs.openvswitch.org/en/latest/intro/install/distributions/
> > > > > >
> > > > > > where it claims to have OVS+DPDK debian package. Snippets below
> > > > > > /**
> > > > > >
> > > > > > 3. For DPDK datapath, Open vSwitch with DPDK support is bundled
> in
> > > the
> > > > > > package openvswitch-switch-dpdk.
> > > > >
> > > > > This seems to be true for Ubuntu but not for Debian or for upstream
> > > Open
> > > > > vSwitch.
> > > > >
> > > >
> > > > Thanks. I am building OVS(2.11.90 latest git source)+DPDK(18.11.2)
> > > package
> > > > on Ubuntu and it doesn't seem to work.  I have set
> > > DATAPATH_CONFIGURE_OPTS =
> > > > --with-dpdk="".
> > >
> > > Yes.  The documentation is wrong.  (That's what I was trying to say
> > > above, too.)
> > >
> >
> > Got it. Thanks.
>
> I sent a patch to update the documentation:
> https://mail.openvswitch.org/pipermail/ovs-dev/2019-July/360954.html


Explanation is clear to me, thanks for the quick fix. I would like to know
what is the path for engineers who wants to build OVS+DPDK debian packages
because of the changes they are doing to the code and would like to have
debian packages made available rather than source tar ball?
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Building OVS DPDK debian package

2019-07-20 Thread Ravi Kerur
On Wed, Jul 17, 2019 at 4:47 PM Ben Pfaff  wrote:

> On Wed, Jul 17, 2019 at 04:15:06PM -0700, Ravi Kerur wrote:
> > On Wed, Jul 17, 2019 at 11:06 AM Ben Pfaff  wrote:
> >
> > > On Wed, Jul 17, 2019 at 10:03:06AM -0700, Ravi Kerur wrote:
> > > > I am going through OVS 2.11.90 document to build Debian package on
> Ubuntu
> > > > 16.04.4.
> > > >
> > > > http://docs.openvswitch.org/en/latest/intro/install/distributions/
> > > >
> > > > where it claims to have OVS+DPDK debian package. Snippets below
> > > > /**
> > > >
> > > > 3. For DPDK datapath, Open vSwitch with DPDK support is bundled in
> the
> > > > package openvswitch-switch-dpdk.
> > >
> > > This seems to be true for Ubuntu but not for Debian or for upstream
> Open
> > > vSwitch.
> > >
> >
> > Thanks. I am building OVS(2.11.90 latest git source)+DPDK(18.11.2)
> package
> > on Ubuntu and it doesn't seem to work.  I have set
> DATAPATH_CONFIGURE_OPTS =
> > --with-dpdk="".
>
> Yes.  The documentation is wrong.  (That's what I was trying to say
> above, too.)
>

Got it. Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] OVS and DPI(Classifiers)

2019-07-17 Thread Ravi Kerur
Hi,

I am sending this email to gauge if OVS team or community using OVS would
be interested in this effort. I read some discussions which had happened
couple of years back with OVS and Qosmos integration and at least it looked
like OVS team didn't approve of it. I just want to restart it but with
OVS+DPDK and all open source libraries and check if it makes sense.

I have integrated open source classifiers(aka DPI) nDPI and JOY (from
Cisco) libraries into OVS+DPDK. Salient points

(1) Follows same model as OVS+DPDK integration i.e. user can choose
classifiers with '--with-ndpi' and '--with-joy' option during configuration
(2) nDPI and JOY are launched on non-PMD cores so the data path performance
is not impacted
(3) Packets coming into DPDK Rx path is reference counted and sent to nDPI
and JOY via intercore rings
(4) nDPI and JOY results are then made available to the control plane to
act on it
(5) Tested on AWS t3.2xlarge and both UDP and TCP hits 5Gbps for 512 and
above packet size

Thanks,
Ravi
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Building OVS DPDK debian package

2019-07-17 Thread Ravi Kerur
On Wed, Jul 17, 2019 at 11:06 AM Ben Pfaff  wrote:

> On Wed, Jul 17, 2019 at 10:03:06AM -0700, Ravi Kerur wrote:
> > I am going through OVS 2.11.90 document to build Debian package on Ubuntu
> > 16.04.4.
> >
> > http://docs.openvswitch.org/en/latest/intro/install/distributions/
> >
> > where it claims to have OVS+DPDK debian package. Snippets below
> > /**
> >
> > 3. For DPDK datapath, Open vSwitch with DPDK support is bundled in the
> > package openvswitch-switch-dpdk.
>
> This seems to be true for Ubuntu but not for Debian or for upstream Open
> vSwitch.
>

Thanks. I am building OVS(2.11.90 latest git source)+DPDK(18.11.2) package
on Ubuntu and it doesn't seem to work.  I have set DATAPATH_CONFIGURE_OPTS =
--with-dpdk="".
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] Building OVS DPDK debian package

2019-07-17 Thread Ravi Kerur
Hi,

I am going through OVS 2.11.90 document to build Debian package on Ubuntu
16.04.4.

http://docs.openvswitch.org/en/latest/intro/install/distributions/

where it claims to have OVS+DPDK debian package. Snippets below
/**

3. For DPDK datapath, Open vSwitch with DPDK support is bundled in the
package openvswitch-switch-dpdk.

/

I used following commands to build packages

fakeroot debian/rules clean

fakeroot debian/rules binary

I got only following debian packages built but no ovs dpdk package.

ls -l *deb

-rw-r--r-- 1 root root 1142974 Jul 17 16:53
*libopenvswitch_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root 1550512 Jul 17 16:53
*libopenvswitch-dev_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root  163082 Jul 17 16:53
*openvswitch-common_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root 5206104 Jul 17 16:53
*openvswitch-datapath-dkms_2.11.90-1_all.deb*

-rw-r--r-- 1 root root 7965756 Jul 17 16:53
*openvswitch-datapath-source_2.11.90-1_all.deb*

-rw-r--r-- 1 root root 6058670 Jul 17 16:53
*openvswitch-dbg_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root   34114 Jul 17 16:53
*openvswitch-ipsec_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root   23392 Jul 17 16:53
*openvswitch-pki_2.11.90-1_all.deb*

-rw-r--r-- 1 root root  281158 Jul 17 16:53
*openvswitch-switch_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root   37674 Jul 17 16:53
*openvswitch-test_2.11.90-1_all.deb*

-rw-r--r-- 1 root root   40500 Jul 17 16:53
*openvswitch-testcontroller_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root   60412 Jul 17 16:53
*openvswitch-vtep_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root  101232 Jul 17 16:53
*ovn-central_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root  364924 Jul 17 16:53 *ovn-common_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root   35944 Jul 17 16:53
*ovn-controller-vtep_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root   27282 Jul 17 16:53 *ovn-docker_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root  103420 Jul 17 16:53 *ovn-host_2.11.90-1_amd64.deb*

-rw-r--r-- 1 root root  103372 Jul 17 16:53
*python-openvswitch_2.11.90-1_all.deb*


Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Q on ovs-dpdk + Vxlan user space tunneling

2018-10-18 Thread Ravi Kerur
Hi Daniel,

I think there is a bug either in document or code, I got it working by
adding options:key=

For e.g for Vxlan 100

ovs-vsctl --may-exist add-port br-int vxlan100 -- set Interface vxlan100
type=vxlan options:remote_ip= options:key=100

Thanks for your help.

-Ravi


On Wed, Oct 17, 2018 at 11:22 PM benli ye  wrote:

> It seems your ovs version is 2.10.0. I thought it should have this feature
> ready. Add Justin to see if he can confirm on this.
> Is there any core files in your /var/core or /var/log/core?
>
> Thanks,
> Daniel
>
>
> On Oct 18, 2018, at 1:00 AM, Ravi Kerur  wrote:
>
> Hello Daniel,
>
> When I tried to configure vxlan routes I had mentioned I was seeing
> errors, when I checked log files under /var/log/openvswitch there is no
> information...
>
> -rw-r- 1 root adm   0 Oct 17 06:25 ovs-vswitchd.log
> -rw-r- 1 root adm 536 Oct 17 12:32 ovsdb-server.log
>
> cat ovsdb-server.log
> 2018-10-17T12:26:46.865Z|1|vlog|INFO|opened log file
> /var/log/openvswitch/ovsdb-server.log
> 2018-10-17T12:26:47.185Z|2|ovsdb_server|INFO|ovsdb-server (Open
> vSwitch) 2.10.0
> 2018-10-17T12:26:47.334Z|3|fatal_signal|WARN|terminating with signal
> 15 (Terminated)
> 2018-10-17T12:32:25.971Z|1|vlog|INFO|opened log file
> /var/log/openvswitch/ovsdb-server.log
> 2018-10-17T12:32:26.663Z|2|ovsdb_server|INFO|ovsdb-server (Open
> vSwitch) 2.10.0
> 2018-10-17T12:32:26.783Z|3|fatal_signal|WARN|terminating with signal
> 15 (Terminated)
> ~
>
> Link http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/
> doesn't mention which version of OVS was tested, looks like it is part of
> 2.10.90? Should I download latest code for this?
>
> Thanks
>
> On Sun, Oct 14, 2018 at 7:51 AM Ravi Kerur  wrote:
>
>> Hello Daniel,
>>
>> Thank you for your quick response and explanation on br-phy to br-int. I
>> will gather debug logs and update.
>>
>> Thanks.
>> Ravi
>>
>> On Sun, Oct 14, 2018 at 6:19 AM benli ye  wrote:
>>
>>> Hi Ravi,
>>>
>>> Let me try to answer your question.
>>> (1) For the first one: I believe NORMAL action can lead the packet to
>>> tunnel port.
>>> (2) For how packets flow from br-phy to br-int, You can search code
>>> “terminate_native_tunnel()” in ofproto-dpif-xlate.c.
>>>  When it generates datapath flow for an incoming tunnel packet, a
>>> OVS_ACTION_ATTR_TUNNEL_POP is inserted in the actions.
>>>  When the encapsulated packet hit OVS_ACTION_ATTR_TUNNEL_POP action,
>>> it will be handled to tunnel port on br-int as a re-injected packet.
>>>  Then tunnel headers can be split and delivered to corresponding
>>> interface in br-int. When packet sent out from br-int to br-phy, it will
>>> hit the tnl_push action which
>>>  is added when computing output action (see native_tunnel_output()),
>>> then it will use the route you added to send the encapsulated packet from
>>> br-phy interface.
>>> (3) That’s a historic issue as it copied from an original guide. I
>>> believe your assumption is right.
>>> (4) I don’t try this command, I think more log information in
>>> /var/log/openvswitch may be helpful. Hope someone have this answer.
>>>
>>> Thanks,
>>> Daniel Benli Ye
>>>
>>> > On Oct 14, 2018, at 8:55 PM, Ravi Kerur  wrote:
>>> >
>>> > Hi,
>>> >
>>> > I am going through following link and setting up the testbed
>>> >
>>> > http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/
>>> >
>>> > and it is very confusing to me at least. Can someone please clarify
>>> > following questions?
>>> >
>>> > (1) I believe flows needs to be programmed on br-int bridge with
>>> > in_port=vm_port0, out_port=vxlan0, vice-versa. When bridge is created
>>> it
>>> > has a default flow with NORMAL action, i don't think this suffices?
>>> >
>>> > (2) How do packets flow from br-int to br-phy and br-phy to br-int?
>>> >
>>> > (3) Link says add following route
>>> >
>>> > "ovs-appctl ovs/route/add 172.168.1.1/24 br-eth1"
>>> >
>>> > What is br-eth1? I don't see anything about it in the link?
>>> >
>>> > (4) Assuming br-eth1 is br-phy, I tried to add route on the testbed I
>>> > am configuring I get
>>> >
>>> > ovs-appctl ovs/route/add 11.11.11.4/32 br1-phy
>>> > Error while inserting route.
>>> > ovs-appctl: ovs-vswitchd: server returned an error
>>> >
>>> > Thanks.
>>> > ___
>>> > dev mailing list
>>> > d...@openvswitch.org
>>> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>>>
>>>
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Q on ovs-dpdk + Vxlan user space tunneling

2018-10-17 Thread Ravi Kerur
Hi Daniel,

When I try to ping I seeing following vxlan udp unreachable, when I try to
ping from host2-to-host1, basically packets entering br-phy and should be
delivered to br-int(on which vxlan is configured). Any configuration needed
to route packets from br-phy to br-int? What version of OVS is this
functionality tested?




*22:49:53.197925 f8:f2:1e:24:04:94 > f8:f2:1e:24:0d:38, ethertype IPv4
(0x0800), length 120: (tos 0xc0, ttl 64, id 44055, offset 0, flags [none],
proto ICMP (1), length 106)192.168.40.10 > 192.168.40.9
<http://192.168.40.9>: ICMP 192.168.40.10 udp port 8472 unreachable, length
86(tos 0x0, ttl 10, id 339, offset 0, flags [none], proto UDP (17),
length 78)*

Thanks.

On Wed, Oct 17, 2018 at 10:00 AM Ravi Kerur  wrote:

> Hello Daniel,
>
> When I tried to configure vxlan routes I had mentioned I was seeing
> errors, when I checked log files under /var/log/openvswitch there is no
> information...
>
> -rw-r- 1 root adm   0 Oct 17 06:25 ovs-vswitchd.log
> -rw-r- 1 root adm 536 Oct 17 12:32 ovsdb-server.log
>
> cat ovsdb-server.log
> 2018-10-17T12:26:46.865Z|1|vlog|INFO|opened log file
> /var/log/openvswitch/ovsdb-server.log
> 2018-10-17T12:26:47.185Z|2|ovsdb_server|INFO|ovsdb-server (Open
> vSwitch) 2.10.0
> 2018-10-17T12:26:47.334Z|3|fatal_signal|WARN|terminating with signal
> 15 (Terminated)
> 2018-10-17T12:32:25.971Z|1|vlog|INFO|opened log file
> /var/log/openvswitch/ovsdb-server.log
> 2018-10-17T12:32:26.663Z|2|ovsdb_server|INFO|ovsdb-server (Open
> vSwitch) 2.10.0
> 2018-10-17T12:32:26.783Z|3|fatal_signal|WARN|terminating with signal
> 15 (Terminated)
> ~
>
> Link http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/
> doesn't mention which version of OVS was tested, looks like it is part of
> 2.10.90? Should I download latest code for this?
>
> Thanks
>
> On Sun, Oct 14, 2018 at 7:51 AM Ravi Kerur  wrote:
>
>> Hello Daniel,
>>
>> Thank you for your quick response and explanation on br-phy to br-int. I
>> will gather debug logs and update.
>>
>> Thanks.
>> Ravi
>>
>> On Sun, Oct 14, 2018 at 6:19 AM benli ye  wrote:
>>
>>> Hi Ravi,
>>>
>>> Let me try to answer your question.
>>> (1) For the first one: I believe NORMAL action can lead the packet to
>>> tunnel port.
>>> (2) For how packets flow from br-phy to br-int, You can search code
>>> “terminate_native_tunnel()” in ofproto-dpif-xlate.c.
>>>  When it generates datapath flow for an incoming tunnel packet, a
>>> OVS_ACTION_ATTR_TUNNEL_POP is inserted in the actions.
>>>  When the encapsulated packet hit OVS_ACTION_ATTR_TUNNEL_POP action,
>>> it will be handled to tunnel port on br-int as a re-injected packet.
>>>  Then tunnel headers can be split and delivered to corresponding
>>> interface in br-int. When packet sent out from br-int to br-phy, it will
>>> hit the tnl_push action which
>>>  is added when computing output action (see native_tunnel_output()),
>>> then it will use the route you added to send the encapsulated packet from
>>> br-phy interface.
>>> (3) That’s a historic issue as it copied from an original guide. I
>>> believe your assumption is right.
>>> (4) I don’t try this command, I think more log information in
>>> /var/log/openvswitch may be helpful. Hope someone have this answer.
>>>
>>> Thanks,
>>> Daniel Benli Ye
>>>
>>> > On Oct 14, 2018, at 8:55 PM, Ravi Kerur  wrote:
>>> >
>>> > Hi,
>>> >
>>> > I am going through following link and setting up the testbed
>>> >
>>> > http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/
>>> >
>>> > and it is very confusing to me at least. Can someone please clarify
>>> > following questions?
>>> >
>>> > (1) I believe flows needs to be programmed on br-int bridge with
>>> > in_port=vm_port0, out_port=vxlan0, vice-versa. When bridge is created
>>> it
>>> > has a default flow with NORMAL action, i don't think this suffices?
>>> >
>>> > (2) How do packets flow from br-int to br-phy and br-phy to br-int?
>>> >
>>> > (3) Link says add following route
>>> >
>>> > "ovs-appctl ovs/route/add 172.168.1.1/24 br-eth1"
>>> >
>>> > What is br-eth1? I don't see anything about it in the link?
>>> >
>>> > (4) Assuming br-eth1 is br-phy, I tried to add route on the testbed I
>>> > am configuring I get
>>> >
>>> > ovs-appctl ovs/route/add 11.11.11.4/32 br1-phy
>>> > Error while inserting route.
>>> > ovs-appctl: ovs-vswitchd: server returned an error
>>> >
>>> > Thanks.
>>> > ___
>>> > dev mailing list
>>> > d...@openvswitch.org
>>> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>>>
>>>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Q on ovs-dpdk + Vxlan user space tunneling

2018-10-17 Thread Ravi Kerur
Hello Daniel,

When I tried to configure vxlan routes I had mentioned I was seeing errors,
when I checked log files under /var/log/openvswitch there is no
information...

-rw-r- 1 root adm   0 Oct 17 06:25 ovs-vswitchd.log
-rw-r- 1 root adm 536 Oct 17 12:32 ovsdb-server.log

cat ovsdb-server.log
2018-10-17T12:26:46.865Z|1|vlog|INFO|opened log file
/var/log/openvswitch/ovsdb-server.log
2018-10-17T12:26:47.185Z|2|ovsdb_server|INFO|ovsdb-server (Open
vSwitch) 2.10.0
2018-10-17T12:26:47.334Z|3|fatal_signal|WARN|terminating with signal 15
(Terminated)
2018-10-17T12:32:25.971Z|1|vlog|INFO|opened log file
/var/log/openvswitch/ovsdb-server.log
2018-10-17T12:32:26.663Z|2|ovsdb_server|INFO|ovsdb-server (Open
vSwitch) 2.10.0
2018-10-17T12:32:26.783Z|3|fatal_signal|WARN|terminating with signal 15
(Terminated)
~

Link http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/
doesn't mention which version of OVS was tested, looks like it is part of
2.10.90? Should I download latest code for this?

Thanks

On Sun, Oct 14, 2018 at 7:51 AM Ravi Kerur  wrote:

> Hello Daniel,
>
> Thank you for your quick response and explanation on br-phy to br-int. I
> will gather debug logs and update.
>
> Thanks.
> Ravi
>
> On Sun, Oct 14, 2018 at 6:19 AM benli ye  wrote:
>
>> Hi Ravi,
>>
>> Let me try to answer your question.
>> (1) For the first one: I believe NORMAL action can lead the packet to
>> tunnel port.
>> (2) For how packets flow from br-phy to br-int, You can search code
>> “terminate_native_tunnel()” in ofproto-dpif-xlate.c.
>>  When it generates datapath flow for an incoming tunnel packet, a
>> OVS_ACTION_ATTR_TUNNEL_POP is inserted in the actions.
>>  When the encapsulated packet hit OVS_ACTION_ATTR_TUNNEL_POP action,
>> it will be handled to tunnel port on br-int as a re-injected packet.
>>  Then tunnel headers can be split and delivered to corresponding
>> interface in br-int. When packet sent out from br-int to br-phy, it will
>> hit the tnl_push action which
>>  is added when computing output action (see native_tunnel_output()),
>> then it will use the route you added to send the encapsulated packet from
>> br-phy interface.
>> (3) That’s a historic issue as it copied from an original guide. I
>> believe your assumption is right.
>> (4) I don’t try this command, I think more log information in
>> /var/log/openvswitch may be helpful. Hope someone have this answer.
>>
>> Thanks,
>> Daniel Benli Ye
>>
>> > On Oct 14, 2018, at 8:55 PM, Ravi Kerur  wrote:
>> >
>> > Hi,
>> >
>> > I am going through following link and setting up the testbed
>> >
>> > http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/
>> >
>> > and it is very confusing to me at least. Can someone please clarify
>> > following questions?
>> >
>> > (1) I believe flows needs to be programmed on br-int bridge with
>> > in_port=vm_port0, out_port=vxlan0, vice-versa. When bridge is created it
>> > has a default flow with NORMAL action, i don't think this suffices?
>> >
>> > (2) How do packets flow from br-int to br-phy and br-phy to br-int?
>> >
>> > (3) Link says add following route
>> >
>> > "ovs-appctl ovs/route/add 172.168.1.1/24 br-eth1"
>> >
>> > What is br-eth1? I don't see anything about it in the link?
>> >
>> > (4) Assuming br-eth1 is br-phy, I tried to add route on the testbed I
>> > am configuring I get
>> >
>> > ovs-appctl ovs/route/add 11.11.11.4/32 br1-phy
>> > Error while inserting route.
>> > ovs-appctl: ovs-vswitchd: server returned an error
>> >
>> > Thanks.
>> > ___
>> > dev mailing list
>> > d...@openvswitch.org
>> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>>
>>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Q on ovs-dpdk + Vxlan user space tunneling

2018-10-14 Thread Ravi Kerur
Hello Daniel,

Thank you for your quick response and explanation on br-phy to br-int. I
will gather debug logs and update.

Thanks.
Ravi

On Sun, Oct 14, 2018 at 6:19 AM benli ye  wrote:

> Hi Ravi,
>
> Let me try to answer your question.
> (1) For the first one: I believe NORMAL action can lead the packet to
> tunnel port.
> (2) For how packets flow from br-phy to br-int, You can search code
> “terminate_native_tunnel()” in ofproto-dpif-xlate.c.
>  When it generates datapath flow for an incoming tunnel packet, a
> OVS_ACTION_ATTR_TUNNEL_POP is inserted in the actions.
>  When the encapsulated packet hit OVS_ACTION_ATTR_TUNNEL_POP action,
> it will be handled to tunnel port on br-int as a re-injected packet.
>  Then tunnel headers can be split and delivered to corresponding
> interface in br-int. When packet sent out from br-int to br-phy, it will
> hit the tnl_push action which
>  is added when computing output action (see native_tunnel_output()),
> then it will use the route you added to send the encapsulated packet from
> br-phy interface.
> (3) That’s a historic issue as it copied from an original guide. I believe
> your assumption is right.
> (4) I don’t try this command, I think more log information in
> /var/log/openvswitch may be helpful. Hope someone have this answer.
>
> Thanks,
> Daniel Benli Ye
>
> > On Oct 14, 2018, at 8:55 PM, Ravi Kerur  wrote:
> >
> > Hi,
> >
> > I am going through following link and setting up the testbed
> >
> > http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/
> >
> > and it is very confusing to me at least. Can someone please clarify
> > following questions?
> >
> > (1) I believe flows needs to be programmed on br-int bridge with
> > in_port=vm_port0, out_port=vxlan0, vice-versa. When bridge is created it
> > has a default flow with NORMAL action, i don't think this suffices?
> >
> > (2) How do packets flow from br-int to br-phy and br-phy to br-int?
> >
> > (3) Link says add following route
> >
> > "ovs-appctl ovs/route/add 172.168.1.1/24 br-eth1"
> >
> > What is br-eth1? I don't see anything about it in the link?
> >
> > (4) Assuming br-eth1 is br-phy, I tried to add route on the testbed I
> > am configuring I get
> >
> > ovs-appctl ovs/route/add 11.11.11.4/32 br1-phy
> > Error while inserting route.
> > ovs-appctl: ovs-vswitchd: server returned an error
> >
> > Thanks.
> > ___
> > dev mailing list
> > d...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] Q on ovs-dpdk + Vxlan user space tunneling

2018-10-14 Thread Ravi Kerur
Hi,

I am going through following link and setting up the testbed

http://docs.openvswitch.org/en/latest/howto/userspace-tunneling/

and it is very confusing to me at least. Can someone please clarify
following questions?

(1) I believe flows needs to be programmed on br-int bridge with
in_port=vm_port0, out_port=vxlan0, vice-versa. When bridge is created it
has a default flow with NORMAL action, i don't think this suffices?

(2) How do packets flow from br-int to br-phy and br-phy to br-int?

(3) Link says add following route

"ovs-appctl ovs/route/add 172.168.1.1/24 br-eth1"

What is br-eth1? I don't see anything about it in the link?

(4) Assuming br-eth1 is br-phy, I tried to add route on the testbed I
am configuring I get

ovs-appctl ovs/route/add 11.11.11.4/32 br1-phy
Error while inserting route.
ovs-appctl: ovs-vswitchd: server returned an error

Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Multiqueue in vhost using OVS-DPDK

2018-07-12 Thread Ravi Kerur
Hello Ian,

Document was very helpful. My testbed has OVS-DPDK vhost and virito in a
container, it had enough information for me to get it working inside the
container.

I have one question for you, I run 'iperf3' tcp and udp performance tests
for more than 5 minutes and packet traverses through vhost-virtio
interfaces, while tests are running I constantly run 'ovs-appctl
dpif-netdev/pmd-rxq-show' and 90% of the time pmd usage is less than 5%.
What is it measuring? pmd threads cpu usage? All PMD threads are in tight
loop taking 100% cpu time so wondering what it reports.

ovs-appctl dpif-netdev/pmd-rxq-show
pmd thread numa_id 0 core_id 6:
  isolated : false
  port: dpdk-eth1 queue-id:  1  pmd usage:  0 %
pmd thread numa_id 0 core_id 7:
  isolated : false
  port: vhost-user-0  queue-id:  0  pmd usage:  0 %
pmd thread numa_id 0 core_id 8:
  isolated : false
  port: vhost-user-0  queue-id:  1  pmd usage:  0 %
pmd thread numa_id 0 core_id 9:
  isolated : false
  port: vhost-user-1  queue-id:  1  pmd usage:  0 %
pmd thread numa_id 0 core_id 10:
  isolated : false
  port: vhost-user-1  queue-id:  0  pmd usage:  0 %
pmd thread numa_id 0 core_id 11:
  isolated : false
  port: dpdk-eth0 queue-id:  1  pmd usage:  3 %
pmd thread numa_id 0 core_id 12:
  isolated : false
  port: dpdk-eth1 queue-id:  0  pmd usage:  0 %
pmd thread numa_id 0 core_id 13:
  isolated : false
  port: dpdk-eth0 queue-id:  0  pmd usage:  6 %

Thanks.

On Wed, Jul 11, 2018 at 11:35 AM Ravi Kerur  wrote:

>
>
> On Wed, Jul 11, 2018 at 11:32 AM Ian Stokes  wrote:
>
>> On 7/11/2018 7:23 PM, Ian Stokes wrote:
>> > On 7/11/2018 7:02 PM, Ravi Kerur wrote:
>> >> Hello OVS-DPDK team,
>> >>
>> >> I am using OVS 2.9.90 for my vhost-virtio testing and had some
>> >> questions on
>> >> vhost multiqueue support, it doesn't seem to be working correctly.
>> Kindly
>> >> let me know if multiqueue is supported? I am using following link as a
>> >> reference.
>> >>
>> >>
>> https://software.intel.com/en-us/articles/configure-vhost-user-multiqueue-for-ovs-with-dpdk
>> >>
>> >>
>> >
>> > Hi Ravi, that document was wrote for OVS 2.5 and DPDK 2.2. There have
>> > been a number of changes since then. I'll need to update it.
>> >
>> > I would suggest following the ovs docs
>> >
>> >
>> http://docs.openvswitch.org/en/latest/topics/dpdk/vhost-user/#adding-vhost-user-ports-to-the-guest-qemu
>> >
>> >
>> > specifically the section for multi queue as it describes the options
>> > required.
>> >
>> >> ovs-vswitchd --version
>> >> ovs-vswitchd (Open vSwitch) 2.9.90
>> >> DPDK 17.11.2
>> >> ovs-vsctl get Open_vSwitch . dpdk_version
>> >> "DPDK 17.11.2"
>> >> ovs-vsctl get Open_vSwitch . dpdk_initialized
>> >> true
>> >>
>> >> ovs-vsctl set Interface vhost-user-0 options:n_rxq=2
>> >> ovs-vsctl set Interface vhost-user-0 options:n_txq=2
>> >> ovs-vsctl set Interface vhost-user-1 options:n_rxq=2
>> >> ovs-vsctl set Interface vhost-user-1 options:n_txq=2
>> >
>> > You do not need to set the number of rxqs for vhost devices now in OVS
>> > DPDK. This is set automatically when you launch a guest vm.
>> >
>> > Txqs are autmatically set by ovs dpdk also (it's the numbers of PMDs in
>> > the core mask +1) so no need to set it here.
>> >
>> > You only need to set the number of rxqs if you were using multiple
>> ports
>> > on a physical dpdk port.
>>
>> Apologies, I meant multiple queues on a physical dpdk port.
>>
>
> Thank you Ian. Let me go through the document and get back to you if I
> have any questions.
>
>>
>> Ian
>> >
>> > Ian
>> >>
>> >> I see following messages in openvswitch logs
>> >> 2018-07-11T17:13:54.644Z|00210|netdev|WARN|vhost-user-1: arguments
>> >> provided
>> >> to device that is not configurable
>> >> 2018-07-11T17:13:57.514Z|00211|netdev|WARN|vhost-user-0: arguments
>> >> provided
>> >> to device that is not configurable
>> >> 2018-07-11T17:13:57.514Z|00212|netdev|WARN|vhost-user-1: arguments
>> >> provided
>> >> to device that is not configurable
>> >> 2018-07-11T17:13:57.516Z|00213|netdev|WARN|vhost-user-0: arguments
>> >> provided
>> >> to device that is not configurable
>> >> 2018-07-11T17:13:57.516Z|00214|netdev|WARN|vhost-user-1: arguments
>

Re: [ovs-dev] Multiqueue in vhost using OVS-DPDK

2018-07-11 Thread Ravi Kerur
On Wed, Jul 11, 2018 at 11:32 AM Ian Stokes  wrote:

> On 7/11/2018 7:23 PM, Ian Stokes wrote:
> > On 7/11/2018 7:02 PM, Ravi Kerur wrote:
> >> Hello OVS-DPDK team,
> >>
> >> I am using OVS 2.9.90 for my vhost-virtio testing and had some
> >> questions on
> >> vhost multiqueue support, it doesn't seem to be working correctly.
> Kindly
> >> let me know if multiqueue is supported? I am using following link as a
> >> reference.
> >>
> >>
> https://software.intel.com/en-us/articles/configure-vhost-user-multiqueue-for-ovs-with-dpdk
> >>
> >>
> >
> > Hi Ravi, that document was wrote for OVS 2.5 and DPDK 2.2. There have
> > been a number of changes since then. I'll need to update it.
> >
> > I would suggest following the ovs docs
> >
> >
> http://docs.openvswitch.org/en/latest/topics/dpdk/vhost-user/#adding-vhost-user-ports-to-the-guest-qemu
> >
> >
> > specifically the section for multi queue as it describes the options
> > required.
> >
> >> ovs-vswitchd --version
> >> ovs-vswitchd (Open vSwitch) 2.9.90
> >> DPDK 17.11.2
> >> ovs-vsctl get Open_vSwitch . dpdk_version
> >> "DPDK 17.11.2"
> >> ovs-vsctl get Open_vSwitch . dpdk_initialized
> >> true
> >>
> >> ovs-vsctl set Interface vhost-user-0 options:n_rxq=2
> >> ovs-vsctl set Interface vhost-user-0 options:n_txq=2
> >> ovs-vsctl set Interface vhost-user-1 options:n_rxq=2
> >> ovs-vsctl set Interface vhost-user-1 options:n_txq=2
> >
> > You do not need to set the number of rxqs for vhost devices now in OVS
> > DPDK. This is set automatically when you launch a guest vm.
> >
> > Txqs are autmatically set by ovs dpdk also (it's the numbers of PMDs in
> > the core mask +1) so no need to set it here.
> >
> > You only need to set the number of rxqs if you were using multiple ports
> > on a physical dpdk port.
>
> Apologies, I meant multiple queues on a physical dpdk port.
>

Thank you Ian. Let me go through the document and get back to you if I have
any questions.

>
> Ian
> >
> > Ian
> >>
> >> I see following messages in openvswitch logs
> >> 2018-07-11T17:13:54.644Z|00210|netdev|WARN|vhost-user-1: arguments
> >> provided
> >> to device that is not configurable
> >> 2018-07-11T17:13:57.514Z|00211|netdev|WARN|vhost-user-0: arguments
> >> provided
> >> to device that is not configurable
> >> 2018-07-11T17:13:57.514Z|00212|netdev|WARN|vhost-user-1: arguments
> >> provided
> >> to device that is not configurable
> >> 2018-07-11T17:13:57.516Z|00213|netdev|WARN|vhost-user-0: arguments
> >> provided
> >> to device that is not configurable
> >> 2018-07-11T17:13:57.516Z|00214|netdev|WARN|vhost-user-1: arguments
> >> provided
> >> to device that is not configurable
> >> 2018-07-11T17:13:57.517Z|00215|netdev|WARN|vhost-user-0: arguments
> >> provided
> >> to device that is not configurable
> >> 2018-07-11T17:13:57.517Z|00216|netdev|WARN|vhost-user-1: arguments
> >> provided
> >> to device that is not configurable
> >> ...
> >>
> >> ovs-appctl dpctl/show
> >> netdev@ovs-netdev:
> >>lookups: hit:89395441 missed:216 lost:0
> >>flows: 0
> >>port 0: ovs-netdev (tap)
> >>port 1: br0 (tap)
> >>*port 2: vhost-user-0 (dpdkvhostuser: configured_rx_queues=1,
> >> configured_tx_queues=1, mtu=9000, requested_rx_queues=1,
> >> requested_tx_queues=1)*
> >>port 3: dpdk-eth0 (dpdk: configured_rx_queues=2,
> >> configured_rxq_descriptors=1024, configured_tx_queues=5,
> >> configured_txq_descriptors=1024, lsc_interrupt_mode=false, mtu=9000,
> >> requested_rx_queues=2, requested_rxq_descriptors=1024,
> >> requested_tx_queues=5, requested_txq_descriptors=1024,
> >> rx_csum_offload=false)
> >>*port 4: vhost-user-1 (dpdkvhostuser: configured_rx_queues=1,
> >> configured_tx_queues=1, mtu=9000, requested_rx_queues=1,
> >> requested_tx_queues=1)*
> >>port 5: dpdk-eth1 (dpdk: configured_rx_queues=2,
> >> configured_rxq_descriptors=1024, configured_tx_queues=5,
> >> configured_txq_descriptors=1024, lsc_interrupt_mode=false, mtu=9000,
> >> requested_rx_queues=2, requested_rxq_descriptors=1024,
> >> requested_tx_queues=5, requested_txq_descriptors=1024,
> >> rx_csum_offload=false)
> >>port 6: br1 (tap)
> >>
> >> Thanks.
> >> ___
> >> dev mailing list
> >> d...@openvswitch.org
> >> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
> >>
> >
> > ___
> > dev mailing list
> > d...@openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] ovs-vswitchd 2.4.1 scale >10K add/delete flows 100% cpu

2018-07-11 Thread Ravi Kerur
On Tue, Jul 10, 2018 at 2:07 PM Ben Pfaff  wrote:

> On Thu, Jul 05, 2018 at 01:44:33PM -0700, Ravi Kerur wrote:
> > During scale flow add/delete (>10K), I am seeing ovs-vswitchd cpu usage
> > spike to 100% and stay there without any sign of returning to normal cpu
> > usage. It's normal OVS 2.4.1 and no DPDK involved. I am trying to get
> > 'perf' working which might help in isolating the problem. In the
> meantime I
> > would like to understand following things
> >
> > (1) Recommended system configuration i.e. core allocation, memory,
> > hugepages, ...
> > (2) Published scale numbers for 2.4.1
> > (3) Known performance issues with 2.4.1
> > (4) Debugs to collect
>
> 2.4.x is really old.  It was released in 2015.  I doubt anyone is going
> to be able to help you with it.
>

Thanks for the information. We are using OF1.3, (10K) Add/Delete come into
OVS as a individual flowmod.

Currently I have three versions in our lab

(1) OVS 2.4.1 -- issue is seen, I am still trying to get 'perf' running on
that system. Once I have it running I will post more details.
(2) OVS 2.5.x -- Using this version with DPDK for other things
(3) OVS 2.9.90 -- Currently testing for vhost-virtio functionality

Do you think OVS 2.5.x might be better suited for large number of
individual flowmods or you recommend 2.9.90?
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] ovs-vswitchd 2.4.1 scale >10K add/delete flows 100% cpu

2018-07-05 Thread Ravi Kerur
Hi,

During scale flow add/delete (>10K), I am seeing ovs-vswitchd cpu usage
spike to 100% and stay there without any sign of returning to normal cpu
usage. It's normal OVS 2.4.1 and no DPDK involved. I am trying to get
'perf' working which might help in isolating the problem. In the meantime I
would like to understand following things

(1) Recommended system configuration i.e. core allocation, memory,
hugepages, ...
(2) Published scale numbers for 2.4.1
(3) Known performance issues with 2.4.1
(4) Debugs to collect

ovs-ofctl --version
ovs-ofctl (Open vSwitch) 2.4.1
Compiled May 25 2016 13:31:48
OpenFlow versions 0x1:0x4

 PID USER  PR  NIVIRTRESSHR S  %CPU %MEM TIME+
COMMAND

56446 root  20   0 45.894g 0.031t  12084 S 814.7 12.6 788147:01
qemu-system-x86

28509 root  10 -10 2215740 310668   7304 R 100.2  0.1  10502:22
ovs-vswitchd


55579 root  20   0 45.688g 0.029t  12508 S  15.8 11.8 511176:21
qemu-system-x86

Enabled some debugs
ovs-appctl vlog/set poll_loop:DBG

and logs show

2018-07-04T14:27:20.307Z|00474|connmgr|INFO|vn-vn9014<->unix: 17000
flow_mods in the last 56 s (16612 adds, 388 deletes)
2018-07-04T14:27:24.213Z|00475|connmgr|INFO|vn-vn9046<->unix: 17188
flow_mods in the last 58 s (16610 adds, 578 deletes)
2018-07-04T14:28:20.306Z|00476|connmgr|INFO|vn-vn9014<->unix: 2786
flow_mods in the last 59 s (2786 adds)
2018-07-04T14:28:24.214Z|00477|connmgr|INFO|vn-vn9046<->unix: 2790
flow_mods in the last 59 s (2790 adds)
2018-07-04T14:28:30.002Z|00478|poll_loop|INFO|Dropped 48 log messages in
last 151 seconds (most recently, 149 seconds ago) due to excessive rate
2018-07-04T14:28:30.002Z|00479|poll_loop|INFO|wakeup due to [POLLIN] on fd
446 (FIFO pipe:[2524722865]) at ofproto/ofproto-dpif.c:1574 (*58% CPU
usage)*
2018-07-04T14:28:30.002Z|00480|poll_loop|INFO|wakeup due to [POLLIN] on fd
453 (/var/run/openvswitch/vn-vn9014.mgmt<->) at *lib/stream-fd.c:155 (58%
CPU usage)*
2018-07-04T14:28:30.002Z|00481|poll_loop|INFO|wakeup due to [POLLIN] on fd
453 (/var/run/openvswitch/vn-vn9014.mgmt<->) at lib/stream-fd.c:155 (58%
CPU usage)
2018-07-04T14:28:30.002Z|00482|poll_loop|INFO|wakeup due to 0-ms timeout at
ofproto/ofproto-dpif.c:1571 (*58% CPU usage*)
2018-07-04T14:28:30.002Z|00483|poll_loop|INFO|wakeup due to [POLLIN] on fd
446 (FIFO pipe:[2524722865]) at lib/ovs-rcu.c:206 (*58% CPU usage*)
2018-07-04T14:28:30.003Z|00484|poll_loop|INFO|wakeup due to 0-ms timeout at
lib/ovs-rcu.c:206 (58% CPU usage)
2018-07-04T14:28:30.003Z|00485|poll_loop|INFO|wakeup due to [POLLIN] on fd
446 (FIFO pipe:[2524722865]) at lib/ovs-rcu.c:206 (*58% CPU usage*)
...

Eventually CPU usage reaches 100% and stays there.

Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OVS (master) + DPDK(17.11) + multi-queue

2018-06-19 Thread Ravi Kerur
Hi,


On Tue, Jun 19, 2018 at 12:27 AM Ilya Maximets 
wrote:

> Hi,
> According to your log, your NIC has limited size of tx queues:
>
>   2018-06-19T04:34:46.106Z|00089|dpdk|ERR|PMD: Unsupported size of TX queue
>(max size: 1024)
>
> This means that you have to configure 'n_txq_desc' <= 1024 in order to
> configure your NIC properly. OVS uses 2048 by default and this is causes
> device configuration failure.
>
> Try this:
>
> ovs-vsctl set interface eth1 options:n_txq_desc=1024
>
> It also likely that you will have to configure the same value for
> 'n_rxq_desc'.
>
>
Thank you. It was indeed no. queue descriptors issue. Modifying the config
to 1024 fixed it.

I am using 'pdump/pcap' features in dpdk for packet capture with OVS-DPDK
and currently it doesn't seem to work. I used following link

https://software.intel.com/en-us/articles/dpdk-pdump-in-open-vswitch-with-dpdk

OVS is linked to DPDK 17.11.2 which has pdump library built. OVS has pdump
server socket file created

ls -l /usr/local/var/run/openvswitch/
total 8
...
srwxr-x--- 1 root root 0 Jun 19 19:26 pdump_server_socket
srwxr-x--- 1 root root 0 Jun 19 19:26 vhost-user-1
srwxr-x--- 1 root root 0 Jun 19 19:26 vhost-user-2

./x86_64-native-linuxapp-gcc/build/app/pdump/dpdk-pdump -- --pdump
port=1,queue=*,rx-dev=/tmp/pkts.pcap
--server-socket-path=/usr/local/var/run/openvswitch
EAL: Detected 8 lcore(s)
PANIC in rte_eal_config_attach():
*Cannot open '/var/run/.rte_config' for rte_mem_config*
6: [./x86_64-native-linuxapp-gcc/build/app/pdump/dpdk-pdump(_start+0x29)
[0x4472e9]]
5: [/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)
[0x7ff0ae7ba830]]
4: [./x86_64-native-linuxapp-gcc/build/app/pdump/dpdk-pdump(main+0x155)
[0x44aa76]]
3:
[./x86_64-native-linuxapp-gcc/build/app/pdump/dpdk-pdump(rte_eal_init+0xc7d)
[0x49ef0d]]
2:
[./x86_64-native-linuxapp-gcc/build/app/pdump/dpdk-pdump(__rte_panic+0xc3)
[0x43ebb3]]
1:
[./x86_64-native-linuxapp-gcc/build/app/pdump/dpdk-pdump(rte_dump_stack+0x2b)
[0x4a573b]]
Aborted

Anything I am missing?

Thanks.


> Note that OVS manages TX queues itself and it will try to allocate
> separate TX queue for each PMD thread + 1 for non-PMD threads. So,
> it's kind of impossible to force it to configure only one TX queue
> in case HW supports multiqueue.
>
> > Hi,
> >
> > I am using above configuration on my testbed and when I try to add a port
> > which is bound to igb_uio, I see following errors due to Tx queue
> > configuration. I just want to use single Tx and Rx queue for my testing.
> I
> > looked at Documentation/intro/install/dpdk.rst, i see only "DPDK Physical
> > Port Rx Queues" and nothing for "Tx Queues". Kindly let me know how can I
> > use single tx/rx queues and if I have to use multiple Tx queues what
> > configuration changes I need to do?
> >
> > ovs logs==
> > 2018-06-19T04:33:23.720Z|00075|bridge|INFO|ovs-vswitchd (Open vSwitch)
> > 2.9.90
> > 2018-06-19T04:33:32.735Z|00076|memory|INFO|127688 kB peak resident set
> size
> > after 10.1 seconds
> > 2018-06-19T04:33:32.735Z|00077|memory|INFO|handlers:5 ports:1
> > revalidators:3 rules:5
> > 2018-06-19T04:33:40.857Z|00078|rconn|INFO|br0<->unix#0: connected
> > 2018-06-19T04:33:40.858Z|00079|rconn|INFO|br0<->unix#1: connected
> > 2018-06-19T04:33:40.859Z|00080|rconn|INFO|br0<->unix#2: connected
> > 2018-06-19T04:34:46.094Z|00081|dpdk|INFO|EAL: PCI device :00:06.0 on
> > NUMA socket 0
> > 2018-06-19T04:34:46.094Z|00082|dpdk|INFO|EAL:   probe driver: 1d0f:ec20
> > net_ena
> > 2018-06-19T04:34:46.095Z|00083|dpdk|INFO|PMD: eth_ena_dev_init():
> > Initializing 0:0:6.0
> > 2018-06-19T04:34:46.095Z|00084|netdev_dpdk|INFO|Device ':00:06.0'
> > attached to DPDK
> > 2018-06-19T04:34:46.099Z|00085|dpif_netdev|INFO|PMD thread on numa_id: 0,
> > core id:  0 created.
> > 2018-06-19T04:34:46.099Z|00086|dpif_netdev|INFO|There are 1 pmd threads
> on
> > numa node 0
> > 2018-06-19T04:34:46.105Z|00087|netdev_dpdk|WARN|Rx checksum offload is
> not
> > supported on port 0
> > 2018-06-19T04:34:46.105Z|00088|dpdk|INFO|PMD: Set MTU: 1500
> > 2018-06-19T04:34:46.106Z|00089|dpdk|ERR|PMD: Unsupported size of TX queue
> > (max size: 1024)
> > 2018-06-19T04:34:46.106Z|00090|netdev_dpdk|INFO|Interface eth1 unable to
> > setup txq(0): Invalid argument
> > 2018-06-19T04:34:46.106Z|00091|netdev_dpdk|ERR|Interface eth1(rxq:1 txq:2
> > lsc interrupt mode:false) configure error: Invalid argument
> > 2018-06-19T04:34:46.106Z|00092|dpif_netdev|ERR|Failed to set interface
> eth1
> > new configuration
> > 2018-06-19T04:34:46.106Z|00093|bridge|WARN|could not add network device
> > eth1 to ofproto (No such device)
> >
> >
> > ethtool -l eth1
> > Channel parameters for eth1:
> > Pre-set maximums:
> > RX:128
> > TX:128
> > Other:0
> > Combined:0
> > Current hardware settings:
> > RX:8
> > TX:8
> > Other:0
> > Combined:0
> >
> > ovs-vsctl get  Open_vSwitch . 

[ovs-dev] OVS (master) + DPDK(17.11) + multi-queue

2018-06-18 Thread Ravi Kerur
Hi,

I am using above configuration on my testbed and when I try to add a port
which is bound to igb_uio, I see following errors due to Tx queue
configuration. I just want to use single Tx and Rx queue for my testing. I
looked at Documentation/intro/install/dpdk.rst, i see only "DPDK Physical
Port Rx Queues" and nothing for "Tx Queues". Kindly let me know how can I
use single tx/rx queues and if I have to use multiple Tx queues what
configuration changes I need to do?

ovs logs==
2018-06-19T04:33:23.720Z|00075|bridge|INFO|ovs-vswitchd (Open vSwitch)
2.9.90
2018-06-19T04:33:32.735Z|00076|memory|INFO|127688 kB peak resident set size
after 10.1 seconds
2018-06-19T04:33:32.735Z|00077|memory|INFO|handlers:5 ports:1
revalidators:3 rules:5
2018-06-19T04:33:40.857Z|00078|rconn|INFO|br0<->unix#0: connected
2018-06-19T04:33:40.858Z|00079|rconn|INFO|br0<->unix#1: connected
2018-06-19T04:33:40.859Z|00080|rconn|INFO|br0<->unix#2: connected
2018-06-19T04:34:46.094Z|00081|dpdk|INFO|EAL: PCI device :00:06.0 on
NUMA socket 0
2018-06-19T04:34:46.094Z|00082|dpdk|INFO|EAL:   probe driver: 1d0f:ec20
net_ena
2018-06-19T04:34:46.095Z|00083|dpdk|INFO|PMD: eth_ena_dev_init():
Initializing 0:0:6.0
2018-06-19T04:34:46.095Z|00084|netdev_dpdk|INFO|Device ':00:06.0'
attached to DPDK
2018-06-19T04:34:46.099Z|00085|dpif_netdev|INFO|PMD thread on numa_id: 0,
core id:  0 created.
2018-06-19T04:34:46.099Z|00086|dpif_netdev|INFO|There are 1 pmd threads on
numa node 0
2018-06-19T04:34:46.105Z|00087|netdev_dpdk|WARN|Rx checksum offload is not
supported on port 0
2018-06-19T04:34:46.105Z|00088|dpdk|INFO|PMD: Set MTU: 1500
2018-06-19T04:34:46.106Z|00089|dpdk|ERR|PMD: Unsupported size of TX queue
(max size: 1024)
2018-06-19T04:34:46.106Z|00090|netdev_dpdk|INFO|Interface eth1 unable to
setup txq(0): Invalid argument
2018-06-19T04:34:46.106Z|00091|netdev_dpdk|ERR|Interface eth1(rxq:1 txq:2
lsc interrupt mode:false) configure error: Invalid argument
2018-06-19T04:34:46.106Z|00092|dpif_netdev|ERR|Failed to set interface eth1
new configuration
2018-06-19T04:34:46.106Z|00093|bridge|WARN|could not add network device
eth1 to ofproto (No such device)


ethtool -l eth1
Channel parameters for eth1:
Pre-set maximums:
RX:128
TX:128
Other:0
Combined:0
Current hardware settings:
RX:8
TX:8
Other:0
Combined:0

ovs-vsctl get  Open_vSwitch . other_config
{dpdk-extra="--file-prefix=host", dpdk-hugepage-dir="/dev/hugepages_1G",
dpdk-init="true"}

ovs-vswitchd --version
ovs-vswitchd (Open vSwitch) 2.9.90
DPDK 17.11.2

ovs-vsctl get Open_vSwitch . dpdk_version
"DPDK 17.11.2"

ovs-vsctl get Open_vSwitch . dpdk_initialized
true

Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Issue with OVS 2.9.0, DPDK 18.02 and vhost-user

2018-06-14 Thread Ravi Kerur
On Wed, Jun 13, 2018 at 9:50 AM Ian Stokes  wrote:

> On 6/12/2018 9:50 PM, Ravi Kerur wrote:
> >
> >
> > On Tue, Jun 12, 2018 at 3:31 AM, Stokes, Ian  > <mailto:ian.sto...@intel.com>> wrote:
> >
> > > Hi,
> > >
> > > I have used first link to install, compile and run OVS 2.9.0 and
> DPDK
> > > 18.02, second link to configure vhost-client ports. However, facing
> > > several issues when configured as per the documentation. Inputs
> > > appreciated.
> > >
> > > http://docs.openvswitch.org/en/latest/intro/install/dpdk/
> > <http://docs.openvswitch.org/en/latest/intro/install/dpdk/>
> > >
> > > http://docs.openvswitch.org/en/latest/topics/dpdk/vhost-user/
> > <http://docs.openvswitch.org/en/latest/topics/dpdk/vhost-user/>
> > >
> >
> > Is there a specific reason you require DPDK 18.02?
> >
> > DPDK 17.11 is the latest officially support DPDK for OVS, I'd
> > recommend testing with this as I'm not sure how well validated DPDK
> > 18.02 is.
> >
> > In testing I also found that OVS will fail to compile with 18.02 due
> > to 'rte_eth_find_next_owned_by' not being part of the stable ABI.
> >
> > The list of supported DPDK to OVS mappings can be found in the
> > release doc below.
> >
> > http://docs.openvswitch.org/en/latest/faq/releases/
> > <http://docs.openvswitch.org/en/latest/faq/releases/>
> >
> >
> > Thanks Ian. I am currently using OVS 2.9 and DPDK 18.02 seperately for
> > different things, hence thought of trying with that first. I was able to
> > compile and run as shown in the logs.  Issue was I didn't specify
> > 'datapath_type=netdev' when adding the bridge. Deleting and adding the
> > bridge with 'datapath_type', I was able to add dpdkvhostclient ports on
> > the bridge.
> >
> > Having said that, I decided to try 'ovs-master' + dpdk-17.11 as
> > mentioned in the link and was able to run everything with Tx/Rx packets.
> > Some clarifications I need. My testbed has physical host + containers.
> >
> > (1) tried with dpdkvhostuser (server port on OVS on host) and
> > virtio-user-client (testpmd/dpdk on containers). Was able to configure
> > and run traffic. I do see following messages in log file
> >
> > 2018-06-12T15:51:39.152Z|00080|netdev_dpdk|WARN|dpdkvhostuser ports are
> > considered deprecated;  please migrate to dpdkvhostuserclient ports.
> >
> > Any reason why dpdkvhostuser is not recommended or being deprecated?
>

Thanks for the pointers. Since the message says 'deprecated' I wasn't sure
functionality will be available in future releases.

>
>
> Sure, the documentation explains it best:
>
> "vHost User uses a client-server model. The server
> creates/manages/destroys the vHost User sockets, and the client connects
> to the server. Depending on which port type you use, dpdkvhostuser or
> dpdkvhostuserclient, a different configuration of the client-server
> model is used.
>
> For vhost-user ports, Open vSwitch acts as the server and QEMU the
> client. This means if OVS dies, all VMs must be restarted. On the other
> hand, for vhost-user-client ports, OVS acts as the client and QEMU the
> server. This means OVS can die and be restarted without issue, and it is
> also possible to restart an instance itself. For this reason,
> vhost-user-client ports are the preferred type for all known use cases;
> the only limitation is that vhost-user client mode ports require QEMU
> version 2.7. Ports of type vhost-user are currently deprecated and will
> be removed in a future release."
>
>
> http://docs.openvswitch.org/en/latest/topics/dpdk/vhost-user/#vhost-user-vs-vhost-user-client
>
> > (2) tried with dpdkvhostuserclient (client port OVS on host) and
> > virtio-user-server (testpmd/dpdk on containers). Was unable to
> > configure. Any examples available for this?
>
> I haven't tried this setup myself to date.
>
> Are you running DPDK 18.05 in the container? Just looking for references
> to virtio-server-mode and I only spotted it in the 18.05 release notes.
>
>  From the DPDK 18.05 release notes:
>
> Added support for virtio-user server mode.
>
> In a container environment if the vhost-user backend restarts, there’s
> no way for it to reconnect to virtio-user. To address this, support for
> server mode has been added. In this mode the socket file is created by
> virtio-user, which the backend connects to. This means that if the
> backend restarts, it can reconnect to virtio-user and continue
> communications.
>
> https://dpdk.org/doc/guides/rel_notes/release_18_05.html
>
> Note this isn't available in DPDK 17.11.
>

Container dpdk version is 18.02. I will try with 18.05 soon. Thanks again
for your help.


> Ian
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Issue with OVS 2.9.0, DPDK 18.02 and vhost-user

2018-06-12 Thread Ravi Kerur
On Tue, Jun 12, 2018 at 3:31 AM, Stokes, Ian  wrote:

> > Hi,
> >
> > I have used first link to install, compile and run OVS 2.9.0 and DPDK
> > 18.02, second link to configure vhost-client ports. However, facing
> > several issues when configured as per the documentation. Inputs
> > appreciated.
> >
> > http://docs.openvswitch.org/en/latest/intro/install/dpdk/
> >
> > http://docs.openvswitch.org/en/latest/topics/dpdk/vhost-user/
> >
>
> Is there a specific reason you require DPDK 18.02?
>
> DPDK 17.11 is the latest officially support DPDK for OVS, I'd recommend
> testing with this as I'm not sure how well validated DPDK 18.02 is.
>
> In testing I also found that OVS will fail to compile with 18.02 due to
> 'rte_eth_find_next_owned_by' not being part of the stable ABI.
>
> The list of supported DPDK to OVS mappings can be found in the release doc
> below.
>
> http://docs.openvswitch.org/en/latest/faq/releases/


Thanks Ian. I am currently using OVS 2.9 and DPDK 18.02 seperately for
different things, hence thought of trying with that first. I was able to
compile and run as shown in the logs.  Issue was I didn't specify
'datapath_type=netdev' when adding the bridge. Deleting and adding the
bridge with 'datapath_type', I was able to add dpdkvhostclient ports on the
bridge.

Having said that, I decided to try 'ovs-master' + dpdk-17.11 as mentioned
in the link and was able to run everything with Tx/Rx packets. Some
clarifications I need. My testbed has physical host + containers.

(1) tried with dpdkvhostuser (server port on OVS on host) and
virtio-user-client (testpmd/dpdk on containers). Was able to configure and
run traffic. I do see following messages in log file

2018-06-12T15:51:39.152Z|00080|netdev_dpdk|WARN|dpdkvhostuser ports are
considered deprecated;  please migrate to dpdkvhostuserclient ports.

Any reason why dpdkvhostuser is not recommended or being deprecated?

(2) tried with dpdkvhostuserclient (client port OVS on host) and
virtio-user-server (testpmd/dpdk on containers). Was unable to configure.
Any examples available for this?

Thanks.


>
> > Following logs from  /usr/local/var/log/openvswitch/ovs-vswitchd.log
> shows
> > OVS/DPDK initialized correctly.
> >
> > 2018-06-11T21:15:06.028Z|1|vlog|INFO|opened log file
> > /usr/local/var/log/openvswitch/ovs-vswitchd.log
> > 2018-06-11T21:15:06.032Z|2|ovs_numa|INFO|Discovered 4 CPU cores on
> > NUMA node 0 2018-06-11T21:15:06.032Z|3|ovs_numa|INFO|Discovered 1
> NUMA
> > nodes and 4 CPU cores
> > 2018-06-
> > 11T21:15:06.032Z|4|reconnect|INFO|unix:/usr/
> local/var/run/openvswitch/
> > db.sock:
> > connecting...
> > 2018-06-
> > 11T21:15:06.032Z|5|reconnect|INFO|unix:/usr/
> local/var/run/openvswitch/
> > db.sock:
> > connected
> > 2018-06-11T21:15:06.033Z|6|dpdk|INFO|Using DPDK 18.02.0 2018-06-
> > 11T21:15:06.033Z|7|dpdk|INFO|DPDK Enabled - initializing...
> > 2018-06-11T21:15:06.033Z|8|dpdk|INFO|No vhost-sock-dir provided -
> > defaulting to /usr/local/var/run/openvswitch 2018-06-
> > 11T21:15:06.033Z|9|dpdk|INFO|IOMMU support for vhost-user-client
> > disabled.
> > 2018-06-11T21:15:06.033Z|00010|dpdk|INFO|EAL ARGS: ovs-vswitchd
> --huge-dir
> > /dev/hugepages_1G --socket-mem 2,0 --no-pci --file-prefix=host -c
> > 0x0001
> > 2018-06-11T21:15:06.034Z|00011|dpdk|INFO|EAL: Detected 4 lcore(s)
> > 2018-06-11T21:15:06.034Z|00012|dpdk|INFO|EAL: 2048 hugepages of size
> > 2097152 reserved, but no mounted hugetlbfs found for that size
> > 2018-06-11T21:15:06.035Z|00013|dpdk|INFO|EAL: Multi-process socket
> > /var/run/.host_unix
> > 2018-06-11T21:15:06.036Z|00014|dpdk|INFO|EAL: Probing VFIO support...
> > 2018-06-11T21:15:06.036Z|00015|dpdk|INFO|EAL: VFIO support initialized
> > 2018-06-11T21:15:06.902Z|00016|dpdk|WARN|EAL: WARNING: cpu flags
> > constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !
> > 2018-06-11T21:15:06.906Z|00017|dpdk|INFO|DPDK Enabled - initialized
> 2018-
> > 06-11T21:15:06.906Z|00018|bridge|INFO|ovs-vswitchd (Open vSwitch) 2.9.0
> >
> > root# ovs-vswitchd --version
> > ovs-vswitchd (Open vSwitch) 2.9.0
> > DPDK 18.02.0
> >
> > root# ovs-vsctl get Open_vSwitch . dpdk_version
> > ovs-vsctl: Open_vSwitch does not contain a column whose name matches
> > "dpdk_version"
> > root# ovs-vsctl get Open_vSwitch . dpdk_initialized
> > ovs-vsctl: Open_vSwitch does not contain a column whose name matches
> > "dpdk_initialized"
>
> The functionality above is only available on OVS master, it will be part
> of OVS 2.10 but is not part of OVS 2.9.
>
> >
> > Creating dpdkvhostclient port spits out following error message
> >
> > ovs-vsctl add-port br0 dpdkvhostclient0 -- set Interface dpdkvhostclient0
> > type=dpdkvhostuserclient options:vhost-server-path=/tmp/dpdkvhostclient0
>
> The command above looks ok.
>
> > ovs-vsctl: Error detected while setting up 'dpdkvhostclient0': could not
> > add network device dpdkvhostclient0 to ofproto (Invalid argument).  See
> > ovs-vswitchd log for details.
> > 

[ovs-dev] Issue with OVS 2.9.0, DPDK 18.02 and vhost-user

2018-06-11 Thread Ravi Kerur
Hi,

I have used first link to install, compile and run OVS 2.9.0 and DPDK
18.02, second link to configure vhost-client ports. However, facing several
issues when configured as per the documentation. Inputs appreciated.

http://docs.openvswitch.org/en/latest/intro/install/dpdk/

http://docs.openvswitch.org/en/latest/topics/dpdk/vhost-user/

Following logs from  /usr/local/var/log/openvswitch/ovs-vswitchd.log shows
OVS/DPDK initialized correctly.

2018-06-11T21:15:06.028Z|1|vlog|INFO|opened log file
/usr/local/var/log/openvswitch/ovs-vswitchd.log
2018-06-11T21:15:06.032Z|2|ovs_numa|INFO|Discovered 4 CPU cores on NUMA
node 0
2018-06-11T21:15:06.032Z|3|ovs_numa|INFO|Discovered 1 NUMA nodes and 4
CPU cores
2018-06-11T21:15:06.032Z|4|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
connecting...
2018-06-11T21:15:06.032Z|5|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
connected
2018-06-11T21:15:06.033Z|6|dpdk|INFO|Using DPDK 18.02.0
2018-06-11T21:15:06.033Z|7|dpdk|INFO|DPDK Enabled - initializing...
2018-06-11T21:15:06.033Z|8|dpdk|INFO|No vhost-sock-dir provided -
defaulting to /usr/local/var/run/openvswitch
2018-06-11T21:15:06.033Z|9|dpdk|INFO|IOMMU support for
vhost-user-client disabled.
2018-06-11T21:15:06.033Z|00010|dpdk|INFO|EAL ARGS: ovs-vswitchd --huge-dir
/dev/hugepages_1G --socket-mem 2,0 --no-pci --file-prefix=host -c 0x0001
2018-06-11T21:15:06.034Z|00011|dpdk|INFO|EAL: Detected 4 lcore(s)
2018-06-11T21:15:06.034Z|00012|dpdk|INFO|EAL: 2048 hugepages of size
2097152 reserved, but no mounted hugetlbfs found for that size
2018-06-11T21:15:06.035Z|00013|dpdk|INFO|EAL: Multi-process socket
/var/run/.host_unix
2018-06-11T21:15:06.036Z|00014|dpdk|INFO|EAL: Probing VFIO support...
2018-06-11T21:15:06.036Z|00015|dpdk|INFO|EAL: VFIO support initialized
2018-06-11T21:15:06.902Z|00016|dpdk|WARN|EAL: WARNING: cpu flags
constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !
2018-06-11T21:15:06.906Z|00017|dpdk|INFO|DPDK Enabled - initialized
2018-06-11T21:15:06.906Z|00018|bridge|INFO|ovs-vswitchd (Open vSwitch) 2.9.0

root# ovs-vswitchd --version
ovs-vswitchd (Open vSwitch) 2.9.0
DPDK 18.02.0

root# ovs-vsctl get Open_vSwitch . dpdk_version
ovs-vsctl: Open_vSwitch does not contain a column whose name matches
"dpdk_version"
root# ovs-vsctl get Open_vSwitch . dpdk_initialized
ovs-vsctl: Open_vSwitch does not contain a column whose name matches
"dpdk_initialized"

Creating dpdkvhostclient port spits out following error message

ovs-vsctl add-port br0 dpdkvhostclient0 -- set Interface dpdkvhostclient0
type=dpdkvhostuserclient options:vhost-server-path=/tmp/dpdkvhostclient0
ovs-vsctl: Error detected while setting up 'dpdkvhostclient0': could not
add network device dpdkvhostclient0 to ofproto (Invalid argument).  See
ovs-vswitchd log for details.
ovs-vsctl: The default log directory is "/usr/local/var/log/openvswitch".

>From the logs

2018-06-12T01:25:34.290Z|00071|dpif_netlink|WARN|system@ovs-system: cannot
create port `vhost-user-1' because it has unsupported type
`dpdkvhostuserclient'
2018-06-12T01:25:34.290Z|00072|dpif|WARN|system@ovs-system: failed to add
vhost-user-1 as port: Invalid argument
2018-06-12T01:25:34.290Z|00073|bridge|WARN|could not add network device
vhost-user-1 to ofproto (Invalid argument)
2018-06-12T01:25:37.214Z|00074|dpif|WARN|system@ovs-system: failed to query
port dpdkvhostclient0: Invalid argument
2018-06-12T01:25:37.214Z|00075|dpif_netlink|WARN|system@ovs-system: cannot
create port `dpdkvhostclient0' because it has unsupported type
`dpdkvhostuserclient'
2018-06-12T01:25:37.214Z|00076|dpif|WARN|system@ovs-system: failed to add
dpdkvhostclient0 as port: Invalid argument
2018-06-12T01:25:37.214Z|00077|bridge|WARN|could not add network device
dpdkvhostclient0 to ofproto (Invalid argument)
2018-06-12T01:25:37.214Z|00078|netdev_dpdk|ERR|dpdkvhostclient0: Unable to
unregister vhost driver for socket '/tmp/dpdkvhostclient0'.
2018-06-12T01:25:37.214Z|00079|dpif_netlink|WARN|system@ovs-system: cannot
create port `vhost-user-1' because it has unsupported type
`dpdkvhostuserclient'
2018-06-12T01:25:37.214Z|00080|dpif|WARN|system@ovs-system: failed to add
vhost-user-1 as port: Invalid argument
2018-06-12T01:25:37.214Z|00081|bridge|WARN|could not add network device
vhost-user-1 to ofproto (Invalid argument)

Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] Q on vhost-user and virtio

2018-06-08 Thread Ravi Kerur
On Fri, Jun 8, 2018 at 6:06 AM, Flavio Leitner  wrote:

> On Thu, Jun 07, 2018 at 05:09:46PM -0700, Ravi Kerur wrote:
> > Hi,
> >
> > I have a use-case and I want to
> >
> > (1) create vhost-user ports on OVS-DPDK running on a host
> > (2) in a container a dpdk-based application using virtio-user connecting
> to
> > vhost-user ports via sockets.
> >
> > I looked at following 2 links from Intel which shows how-to configure
> > vhost-user and virtio-user inside a VM and from OVS it's about just
> > configuration.
> >
> > https://software.intel.com/en-us/articles/set-up-open-
> vswitch-with-dpdk-on-ubuntu-server
> >
> > http://docs.openvswitch.org/en/latest/intro/install/dpdk/
> >
> > Question: Above use case supported/tested?
>
> If you are asking for a commercial product, then you should check
> with your support representative instead.
>
> Assuming you are talking about the upstream code, we support OVS
> vhost-user side only, not the virtio-user as it is not part of OVS.
>
>
I am referring to upstream code. I want to use OVS vhost-user on a host and
dpdk-app inside a container using virtio-user connect to OVS_vhost_user. Is
this use-case supported/tested?

> --
> Flavio
>
>
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] Q on vhost-user and virtio

2018-06-07 Thread Ravi Kerur
Hi,

I have a use-case and I want to

(1) create vhost-user ports on OVS-DPDK running on a host
(2) in a container a dpdk-based application using virtio-user connecting to
vhost-user ports via sockets.

I looked at following 2 links from Intel which shows how-to configure
vhost-user and virtio-user inside a VM and from OVS it's about just
configuration.

https://software.intel.com/en-us/articles/set-up-open-vswitch-with-dpdk-on-ubuntu-server

http://docs.openvswitch.org/en/latest/intro/install/dpdk/

Question: Above use case supported/tested?



Thanks.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev