Re: [ovs-dev] [PATCH v2 15/21] nroff: Add support for 'diagram' XML element for protocol headers.

2015-07-28 Thread Alex Wang
On Tue, Jul 28, 2015 at 8:44 AM, Ben Pfaff wrote: > This will be used in documentation for an upcoming change, to document > how Geneve OVN options are encoded. > > The code in this change is from a series (not yet submitted) that makes > much more extensive use of it for documenting protocol hea

[ovs-dev] [PATCH v2] Fix treatment of OpenFlow 1.1+ bucket weights.

2015-07-28 Thread Ben Pfaff
Until now, OVS has parsed all OF1.1+ group buckets that lack a weight as having weight 1. Unfortunately, OpenFlow says that only "select" groups may have a nonzero weight, and requires reporting an error for other kinds of groups that have a nonzero weight. This commit fixes the problem by parsin

Re: [ovs-dev] [PATCH] ofp-util: Report error for weighted bucket in non-select group.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 09:42:45PM -0300, Flavio Leitner wrote: > On Tue, Jul 28, 2015 at 03:21:14PM -0700, Ben Pfaff wrote: > > This complies with OpenFlow 1.1 and later. > > > > Found by OFTest. > > OF1.1 specs says on page 42 that weight is only defined for > select groups. > > and on page 23

Re: [ovs-dev] [PATCH] ovn: Fix broken build.

2015-07-28 Thread Ben Pfaff
Thanks Ethan, applied to master. On Tue, Jul 28, 2015 at 06:54:57PM -0700, Ethan Jackson wrote: > Ah my bad sorry. > > Acked-by: Ethan Jackson > > > On Tue, Jul 28, 2015 at 6:53 PM, Ben Pfaff wrote: > > Fixes the following error: > > > > The following files are in git but not the distribu

Re: [ovs-dev] [PATCH] ovn: Fix broken build.

2015-07-28 Thread Ethan Jackson
Ah my bad sorry. Acked-by: Ethan Jackson On Tue, Jul 28, 2015 at 6:53 PM, Ben Pfaff wrote: > Fixes the following error: > > The following files are in git but not the distribution: > ovn/OVN-GW-HA.md > > CC: Ethan Jackson > Signed-off-by: Ben Pfaff > --- > ovn/automake.mk | 3 ++- >

[ovs-dev] [PATCH] ovn: Fix broken build.

2015-07-28 Thread Ben Pfaff
Fixes the following error: The following files are in git but not the distribution: ovn/OVN-GW-HA.md CC: Ethan Jackson Signed-off-by: Ben Pfaff --- ovn/automake.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ovn/automake.mk b/ovn/automake.mk index 459ee36..117

Re: [ovs-dev] [PATCH] ovn-controller: Avoid overlooking changes that occur during commit.

2015-07-28 Thread Ben Pfaff
Thanks Alex, I applied this to master. On Tue, Jul 28, 2015 at 04:01:13PM -0700, Alex Wang wrote: > Thx for fixing this~! > > Acked-by: Alex Wang > > On Tue, Jul 28, 2015 at 1:41 PM, Ben Pfaff wrote: > > > A commit to the database takes multiple trips through the main loop. In > > that time,

Re: [ovs-dev] [PATCH] ofp-actions: OFPP_ANY (aka OFPP_NONE) is not a valid output port.

2015-07-28 Thread Flavio Leitner
On Tue, Jul 28, 2015 at 03:22:46PM -0700, Ben Pfaff wrote: > This is implied by the list of ports that are valid for output in the > various versions of the OpenFlow specification. > > Found by OFTest. Looks good to me. I wonder how one could set the output port to none. Acked-by: Flavio Leitner

Re: [ovs-dev] [PATCH] ofproto: Ignore generation ID for role change to "equal".

2015-07-28 Thread Flavio Leitner
On Tue, Jul 28, 2015 at 03:21:49PM -0700, Ben Pfaff wrote: > The OpenFlow specification says that only role changes to slave or master > check the generation ID, so this is a bug fix. > > Found by OFTest. Found in OF1.5 page 45 which says that switch must ignore generation_id if the role in the R

Re: [ovs-dev] [PATCH v2 08/21] ovn-controller: Tolerate missing integration bridge.

2015-07-28 Thread Alex Wang
On Tue, Jul 28, 2015 at 4:40 PM, Justin Pettit wrote: > Do you think we should print a warning (at least once) to indicate that > the integration bridge is missing? Otherwise, it could be confusing to > someone why nothing's happening if they typo-ed their bridge name. > > Acked-by: Justin Petti

Re: [ovs-dev] [PATCH] ofp-util: Report error for weighted bucket in non-select group.

2015-07-28 Thread Flavio Leitner
On Tue, Jul 28, 2015 at 03:21:14PM -0700, Ben Pfaff wrote: > This complies with OpenFlow 1.1 and later. > > Found by OFTest. OF1.1 specs says on page 42 that weight is only defined for select groups. and on page 23 says that switch must refuse to add the group entry and must send an error msg wi

Re: [ovs-dev] [PATCH v2 10/21] ovn-controller: Rename init functions that just register IDL columns.

2015-07-28 Thread Justin Pettit
Acked-by: Justin Pettit --Justin > On Jul 28, 2015, at 8:44 AM, Ben Pfaff wrote: > > The generic *_init() names for these functions made it sounds like they > do something more than just register IDL columns, even though that's all > they do. Also, the controller_ctx that was passed into eac

Re: [ovs-dev] [PATCH v2 09/21] ovn-controller: Tolerate missing 'chassis_id'.

2015-07-28 Thread Justin Pettit
Acked-by: Justin Pettit --Justin > On Jul 28, 2015, at 8:44 AM, Ben Pfaff wrote: > > Until now, if the chassis id was missing, ovn-controller exited. This > commit makes ovn-controller wait for it to return. > > Signed-off-by: Ben Pfaff > --- > ovn/controller/binding.c| 3 +++ > ov

Re: [ovs-dev] [PATCH v2 07/21] ovn-controller: Pass 'chassis_id' explicitly to functions that need it.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 04:36:29PM -0700, Justin Pettit wrote: > This adds whitespace to the end of the line. (I've always wanted to > say that to you.) No worries. (I'll get my revenge when I implement the emergency flow cache.) ___ dev mailing list d

Re: [ovs-dev] [PATCH v2] ovn-controller: Fix flow generation for container traffic.

2015-07-28 Thread Ben Pfaff
Thanks. I'm sure it needs a rebase, that's true pretty much all the time ;-) On Tue, Jul 28, 2015 at 04:50:54PM -0700, Gurucharan Shetty wrote: > Okay. (I already committed this patch, so you probably need a rebase) > > On Tue, Jul 28, 2015 at 3:42 PM, Ben Pfaff wrote: > > On Tue, Jul 28, 2015

Re: [ovs-dev] [PATCH v2 06/21] ovn-controller: Factor encapsulation code out of chassis code.

2015-07-28 Thread Justin Pettit
> On Jul 28, 2015, at 4:18 PM, Justin Pettit wrote: > > Acked-by: Justin Pettit I should amend my Ack. I think this introduces a problem. > >> On Jul 28, 2015, at 8:44 AM, Ben Pfaff wrote: >> >> >> /* Returns true if the database is all cleaned up, false if more work is >> * required. *

Re: [ovs-dev] [PATCH v2] ovn-controller: Fix flow generation for container traffic.

2015-07-28 Thread Gurucharan Shetty
Okay. (I already committed this patch, so you probably need a rebase) On Tue, Jul 28, 2015 at 3:42 PM, Ben Pfaff wrote: > On Tue, Jul 28, 2015 at 01:44:42PM -0700, Ben Pfaff wrote: >> On Fri, Jul 24, 2015 at 04:31:03PM -0700, Gurucharan Shetty wrote: >> > In table 64, when a vlan tag is set on a

Re: [ovs-dev] [PATCH v2 08/21] ovn-controller: Tolerate missing integration bridge.

2015-07-28 Thread Justin Pettit
Do you think we should print a warning (at least once) to indicate that the integration bridge is missing? Otherwise, it could be confusing to someone why nothing's happening if they typo-ed their bridge name. Acked-by: Justin Pettit --Justin > On Jul 28, 2015, at 8:44 AM, Ben Pfaff wrote:

Re: [ovs-dev] [PATCH v2 07/21] ovn-controller: Pass 'chassis_id' explicitly to functions that need it.

2015-07-28 Thread Justin Pettit
I forgot to add my Ack: Acked-by: Justin Pettit --Justin > On Jul 28, 2015, at 4:36 PM, Justin Pettit wrote: > > >> On Jul 28, 2015, at 8:44 AM, Ben Pfaff wrote: >> >> I found it otherwise difficult to see what code depended on this. > > It might be nice to explain that you care about th

Re: [ovs-dev] [PATCH v2 07/21] ovn-controller: Pass 'chassis_id' explicitly to functions that need it.

2015-07-28 Thread Justin Pettit
> On Jul 28, 2015, at 8:44 AM, Ben Pfaff wrote: > > I found it otherwise difficult to see what code depended on this. It might be nice to explain that you care about the dependencies due to upcoming patches, since it wasn't immediately obvious to me why you'd care. > diff --git a/ovn/controll

Re: [ovs-dev] [PATCH v2 06/21] ovn-controller: Factor encapsulation code out of chassis code.

2015-07-28 Thread Justin Pettit
Acked-by: Justin Pettit --Justin > On Jul 28, 2015, at 8:44 AM, Ben Pfaff wrote: > > These two pieces of code have different requirements and hardly anything in > common, and I found it easier to understand and reasonably modify the > overall structure of the program when they were separated.

Re: [ovs-dev] [PATCH] ovn-controller: Avoid overlooking changes that occur during commit.

2015-07-28 Thread Alex Wang
Thx for fixing this~! Acked-by: Alex Wang On Tue, Jul 28, 2015 at 1:41 PM, Ben Pfaff wrote: > A commit to the database takes multiple trips through the main loop. In > that time, the database could change, but ovn-controller can't properly > react to the changes until the commit has succeeded

Re: [ovs-dev] [PATCH v2] ovn-controller: Fix flow generation for container traffic.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 01:44:42PM -0700, Ben Pfaff wrote: > On Fri, Jul 24, 2015 at 04:31:03PM -0700, Gurucharan Shetty wrote: > > In table 64, when a vlan tag is set on a packet > > destined to a container running inside a VM, we currently > > don't revert it. This has an unintended consequence f

Re: [ovs-dev] [PATCH] openflow: Add additional reserved space in struct nx_geneve_table_reply.

2015-07-28 Thread Jesse Gross
On Tue, Jul 28, 2015 at 3:30 PM, Ben Pfaff wrote: > On Tue, Jul 28, 2015 at 03:30:05PM -0700, Ben Pfaff wrote: >> On Tue, Jul 28, 2015 at 03:20:52PM -0700, Jesse Gross wrote: >> > It's possible to imagine that a switch might want to report additional >> > capabilities related to Geneve beyond just

Re: [ovs-dev] [PATCH] openflow: Add additional reserved space in struct nx_geneve_table_reply.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 03:30:05PM -0700, Ben Pfaff wrote: > On Tue, Jul 28, 2015 at 03:20:52PM -0700, Jesse Gross wrote: > > It's possible to imagine that a switch might want to report additional > > capabilities related to Geneve beyond just the number of options and > > how much space they can c

Re: [ovs-dev] [PATCH] openflow: Add additional reserved space in struct nx_geneve_table_reply.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 03:20:52PM -0700, Jesse Gross wrote: > It's possible to imagine that a switch might want to report additional > capabilities related to Geneve beyond just the number of options and > how much space they can consume. Some examples include additional > restrictions on parsing

[ovs-dev] [PATCH] ofp-actions: OFPP_ANY (aka OFPP_NONE) is not a valid output port.

2015-07-28 Thread Ben Pfaff
This is implied by the list of ports that are valid for output in the various versions of the OpenFlow specification. Found by OFTest. Signed-off-by: Ben Pfaff --- lib/ofp-actions.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/ofp-actions.c b/lib/ofp-actions.c inde

[ovs-dev] [PATCH] ofproto: Ignore generation ID for role change to "equal".

2015-07-28 Thread Ben Pfaff
The OpenFlow specification says that only role changes to slave or master check the generation ID, so this is a bug fix. Found by OFTest. Signed-off-by: Ben Pfaff --- ofproto/ofproto.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c in

[ovs-dev] [PATCH] ofp-util: Report error for weighted bucket in non-select group.

2015-07-28 Thread Ben Pfaff
This complies with OpenFlow 1.1 and later. Found by OFTest. Signed-off-by: Ben Pfaff --- lib/ofp-util.c | 4 1 file changed, 4 insertions(+) diff --git a/lib/ofp-util.c b/lib/ofp-util.c index 9996e84..28f6d8f 100644 --- a/lib/ofp-util.c +++ b/lib/ofp-util.c @@ -8592,6 +8592,10 @@ ofputil_

[ovs-dev] [PATCH] openflow: Add additional reserved space in struct nx_geneve_table_reply.

2015-07-28 Thread Jesse Gross
It's possible to imagine that a switch might want to report additional capabilities related to Geneve beyond just the number of options and how much space they can consume. Some examples include additional restrictions on parsing (if this command is used for non-OVS implementations or OVS changes h

Re: [ovs-dev] [PATCH v2] ofp-print: Abbreviate duplicated table features.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 02:33:11PM -0700, Andy Zhou wrote: > On Mon, Jul 27, 2015 at 1:58 PM, Andy Zhou wrote: > > Ben, thanks for rebasing. I will review it soon. > > > > On Mon, Jul 27, 2015 at 1:56 PM, Ben Pfaff wrote: > >> I spent some time recently looking at the results of "ovs-ofctl > >> d

Re: [ovs-dev] [PATCH v2] ofp-print: Abbreviate duplicated table features.

2015-07-28 Thread Andy Zhou
On Mon, Jul 27, 2015 at 1:58 PM, Andy Zhou wrote: > Ben, thanks for rebasing. I will review it soon. > > On Mon, Jul 27, 2015 at 1:56 PM, Ben Pfaff wrote: >> I spent some time recently looking at the results of "ovs-ofctl >> dump-table-features". It was really distressing because of the volume o

Re: [ovs-dev] [PATCH branch-2.4 v2] tunnel: Mark GRE64 tunnel protocol deprecated.

2015-07-28 Thread Pravin Shelar
On Mon, Jul 27, 2015 at 11:25 AM, Jesse Gross wrote: > On Tue, Jul 21, 2015 at 9:52 PM, Pravin B Shelar wrote: >> v2.3.0 - 14 Aug 2014 >> diff --git a/datapath/vport-gre.c b/datapath/vport-gre.c >> index 7bbcf57..8a47ab2 100644 >> --- a/datapath/vport-gre.c >> +++ b/datapath/vport-gre.c >> @@ -3

Re: [ovs-dev] [PATCH V3 1/1] Fix detection of vhost_cuse in dpdk rte_config.h

2015-07-28 Thread Pravin Shelar
On Thu, Jul 23, 2015 at 10:48 AM, Gary Mussar wrote: > Dpdk allows users to create a config that includes other config files and > then override values. > > Eg. > defconfig_x86_64-native_vhost_cuse-linuxapp-gcc: > > CONFIG_RTE_BUILD_COMBINE_LIBS=y > CONFIG_RTE_BUILD_SHARED_LIB=n > CONFIG_RTE_LIBRT

Re: [ovs-dev] [PATCH v3] dpif-netdev: fix race for queues between pmd threads

2015-07-28 Thread Flavio Leitner
On Tue, Jul 28, 2015 at 09:55:52AM +0300, Ilya Maximets wrote: > Currently pmd threads select queues in pmd_load_queues() according to > get_n_pmd_threads_on_numa(). This behavior leads to race between pmds, > beacause dp_netdev_set_pmds_on_numa() starts them one by one and > current number of thre

Re: [ovs-dev] [PATCH v2] ovn-controller: Fix flow generation for container traffic.

2015-07-28 Thread Ben Pfaff
On Fri, Jul 24, 2015 at 04:31:03PM -0700, Gurucharan Shetty wrote: > In table 64, when a vlan tag is set on a packet > destined to a container running inside a VM, we currently > don't revert it. This has an unintended consequence for > broadcast traffic when one endpoint of the braodcast > traffic

Re: [ovs-dev] [PATCH v2 03/21] ovn-controller: Avoid blocking to commit OVSDB transactions.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 11:56:05AM -0700, Alex Wang wrote: > Curious here, if we could run into the following race (in main function): > > 1. first run of while loop: we have some change from ovnsb~ > 2. ovn-controller execute all *_run() functions to update~ > 3. the txn commit to ovsdb is INCOMP

[ovs-dev] [PATCH] ovn-controller: Avoid overlooking changes that occur during commit.

2015-07-28 Thread Ben Pfaff
A commit to the database takes multiple trips through the main loop. In that time, the database could change, but ovn-controller can't properly react to the changes until the commit has succeeded or failed. Since commit f1fd765733 (ovn-controller: Avoid blocking to commit OVSDB transactions), Ope

Re: [ovs-dev] [PATCH v3 09/10] ovn: Get/set lport type and options in ovn-nbctl.

2015-07-28 Thread Russell Bryant
On 07/28/2015 04:12 PM, Ben Pfaff wrote: > On Tue, Jul 21, 2015 at 12:59:19PM -0400, Russell Bryant wrote: >> A recent patch added "type" and "options" columns to the Logical_Port >> table in OVN_Northbound. This patch allows you to get and set those >> columns with ovn-nbctl. >> >> Signed-off-by:

Re: [ovs-dev] [PATCH v3 10/10] ovn: Add "localnet" logical port type.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:20PM -0400, Russell Bryant wrote: > Introduce a new logical port type called "localnet". A logical port > with this type also has an option called "network_name". A "localnet" > logical port represents a connection to a locally accessible network. > ovn-controller wi

Re: [ovs-dev] [PATCH v3 09/10] ovn: Get/set lport type and options in ovn-nbctl.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:19PM -0400, Russell Bryant wrote: > A recent patch added "type" and "options" columns to the Logical_Port > table in OVN_Northbound. This patch allows you to get and set those > columns with ovn-nbctl. > > Signed-off-by: Russell Bryant This seems reasonable, althou

Re: [ovs-dev] [PATCH v3 05/10] ovn: Add bridge mappings to ovn-controller.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:15PM -0400, Russell Bryant wrote: > Add a new OVN configuration entry in the Open_vSwitch database called > "ovn-bridge-mappings". This allows the configuration of mappings > between a physical network name and an OVS bridge that provides > connectivity to that networ

Re: [ovs-dev] [PATCH v3 08/10] ovn: Add type and options to logical port.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:18PM -0400, Russell Bryant wrote: > We have started discussing the use of the logical port abstraction in > OVN to represent special types of connections into an OVN logical > switch. This patch proposes some schema updates to reflect these > special types of logical

Re: [ovs-dev] [PATCH v3 06/10] ovn: Add patch ports for ovn bridge mappings.

2015-07-28 Thread Russell Bryant
On 07/28/2015 04:06 PM, Ben Pfaff wrote: > On Tue, Jul 21, 2015 at 12:59:16PM -0400, Russell Bryant wrote: >> While parsing the OVN bridge mapping configuration, ensure that patch >> ports exist between the OVN integration bridge and the physical >> network bridge. If they do not exist, create the

Re: [ovs-dev] [PATCH v3 05/10] ovn: Add bridge mappings to ovn-controller.

2015-07-28 Thread Russell Bryant
On 07/28/2015 04:02 PM, Ben Pfaff wrote: > On Tue, Jul 21, 2015 at 12:59:15PM -0400, Russell Bryant wrote: >> Add a new OVN configuration entry in the Open_vSwitch database called >> "ovn-bridge-mappings". This allows the configuration of mappings >> between a physical network name and an OVS brid

Re: [ovs-dev] [PATCH v3 06/10] ovn: Add patch ports for ovn bridge mappings.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:16PM -0400, Russell Bryant wrote: > While parsing the OVN bridge mapping configuration, ensure that patch > ports exist between the OVN integration bridge and the physical > network bridge. If they do not exist, create them automatically. > > Signed-off-by: Russell B

Re: [ovs-dev] [PATCH v3 04/10] ovn: Drop unnecessary br_int local variable.

2015-07-28 Thread Russell Bryant
On 07/28/2015 03:55 PM, Ben Pfaff wrote: > On Tue, Jul 21, 2015 at 12:59:14PM -0400, Russell Bryant wrote: >> When getting the initial configuration, go ahead and store br_int in >> the controller context. This is already done in the main loop, but a >> future patch wants to use br_int from the co

[ovs-dev] (no subject)

2015-07-28 Thread dev-bounces
___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCH v3 04/10] ovn: Drop unnecessary br_int local variable.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:14PM -0400, Russell Bryant wrote: > When getting the initial configuration, go ahead and store br_int in > the controller context. This is already done in the main loop, but a > future patch wants to use br_int from the controller context sooner in > the code. > > Si

Re: [ovs-dev] [PATCH] ofctrl: Fix use of uninitialized hash value in ofctrl_add_flow().

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 12:24 PM, Russell Bryant wrote: > On 07/28/2015 02:26 PM, Ben Pfaff wrote: >> When ofctrl_add_flow() called ovn_flow_lookup(), the latter used the hash >> from the flow's hmap_node, but the former hadn't initialized it at that >> point. This commit fixes the problem. >> >>

Re: [ovs-dev] [PATCH v3 03/10] ovn: Make column comparisons more generic.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:13PM -0400, Russell Bryant wrote: > The logic in ovn-northd's parents_equal() and tags_equal() is useful > for other columns, so convert them into more generic functions that > can be reused. > > Signed-off-by: Russell Bryant Applied to master, thanks! _

Re: [ovs-dev] [PATCH v3 01/10] lib: Add smap_equal().

2015-07-28 Thread Russell Bryant
On 07/28/2015 02:13 PM, Ben Pfaff wrote: > On Tue, Jul 21, 2015 at 12:59:11PM -0400, Russell Bryant wrote: >> Add a method to determine of two smaps are equal (have the exact same >> set of key-value pairs). >> >> Signed-off-by: Russell Bryant > > Can't this be done in O(n) instead of O(n log n)?

Re: [ovs-dev] [PATCH] ofctrl: Fix use of uninitialized hash value in ofctrl_add_flow().

2015-07-28 Thread Russell Bryant
On 07/28/2015 02:26 PM, Ben Pfaff wrote: > When ofctrl_add_flow() called ovn_flow_lookup(), the latter used the hash > from the flow's hmap_node, but the former hadn't initialized it at that > point. This commit fixes the problem. > > Reported-by: Russell Bryant > Reported-at: http://openvswitch

Re: [ovs-dev] [PATCH v2 03/21] ovn-controller: Avoid blocking to commit OVSDB transactions.

2015-07-28 Thread Alex Wang
On Tue, Jul 28, 2015 at 8:44 AM, Ben Pfaff wrote: > Until now, ovn-controller has been full of loops that commit a transaction > to the OVS or OVN Southbound database. These blocking loops delay other > work within ovn-controller. They also make it unsafe to keep pointers to > database records

[ovs-dev] [PATCH] netdev-dpdk: Increase limit for dpdk ring names

2015-07-28 Thread A.R. Karthick
Hi, Currently, the ovs netdev-dpdk ring type dpdkr, restricts dpdk ring name size to 10 bytes (includes the _rx/tx suffix). This only gives us space to accommodate 10 rings as truncation happens with dpdkr10_rx/tx. The enclosed patch below ensures that we respect the ring name size constraints

Re: [ovs-dev] [PATCH] netdev-dpdk: add support for rings in secondary processes in IVSHMEM setups

2015-07-28 Thread Daniele Di Proietto
This is interesting, thanks for the patch. I'm definitely not a IVSHMEM expert, but I have a concern: what happens if the secondary OVS process allocates or frees some mbufs? (e.g because a packet is sent to multiple destinations or is dropped) I found this in the DPDK documentation: http://dpdk.

Re: [ovs-dev] [PATCH v3 02/10] ovn: Fix uninit access warning from valgrind.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:12PM -0400, Russell Bryant wrote: > While running ovn-controller under valgrind, I noticed several > variations of the same warning. Switching this allocation from malloc > to zalloc resolves it. > > For reference, some examples from valgrind are: > > ==8487== Condi

[ovs-dev] [PATCH] ofctrl: Fix use of uninitialized hash value in ofctrl_add_flow().

2015-07-28 Thread Ben Pfaff
When ofctrl_add_flow() called ovn_flow_lookup(), the latter used the hash from the flow's hmap_node, but the former hadn't initialized it at that point. This commit fixes the problem. Reported-by: Russell Bryant Reported-at: http://openvswitch.org/pipermail/dev/2015-July/057851.html Signed-off-b

Re: [ovs-dev] [PATCH v3 01/10] lib: Add smap_equal().

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:59:11PM -0400, Russell Bryant wrote: > Add a method to determine of two smaps are equal (have the exact same > set of key-value pairs). > > Signed-off-by: Russell Bryant Can't this be done in O(n) instead of O(n log n)? bool smap_equal(const struct smap *smap1, const

Re: [ovs-dev] [PATCH v3] dpif-netdev: fix race for queues between pmd threads

2015-07-28 Thread Daniele Di Proietto
Acked-by: Daniele Di Proietto Thanks! On 28/07/2015 07:55, "Ilya Maximets" wrote: >Currently pmd threads select queues in pmd_load_queues() according to >get_n_pmd_threads_on_numa(). This behavior leads to race between pmds, >beacause dp_netdev_set_pmds_on_numa() starts them one by one and >cu

Re: [ovs-dev] [PATCH v2 01/21] ovn-controller: Fix potential use-after-free in get_core_config().

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 10:54:30AM -0700, Alex Wang wrote: > On Tue, Jul 28, 2015 at 8:44 AM, Ben Pfaff wrote: > > > > > Signed-off-by: Ben Pfaff > > Acked-by: Russell Bryant > > --- > > v1->v2: Call ovsdb_idl_run() before instead of after accessing IDL. > > --- > > ovn/controller/ovn-controll

Re: [ovs-dev] [PATCH v2 01/21] ovn-controller: Fix potential use-after-free in get_core_config().

2015-07-28 Thread Alex Wang
On Tue, Jul 28, 2015 at 8:44 AM, Ben Pfaff wrote: > > Signed-off-by: Ben Pfaff > Acked-by: Russell Bryant > --- > v1->v2: Call ovsdb_idl_run() before instead of after accessing IDL. > --- > ovn/controller/ovn-controller.c | 19 +-- > 1 file changed, 9 insertions(+), 10 deletion

Re: [ovs-dev] [PATCH 2/3] rtbsd: support RTM_IFANNOUNCE messages

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 02:43:52PM -0300, Thadeu Lima de Souza Cascardo wrote: > On Tue, Jul 28, 2015 at 10:22:47AM -0700, Ben Pfaff wrote: > > On Tue, Jul 28, 2015 at 09:48:56AM -0300, Thadeu Lima de Souza Cascardo > > wrote: > > > On Mon, Jul 27, 2015 at 03:46:28PM -0700, Ben Pfaff wrote: > > >

Re: [ovs-dev] [PATCH 2/3] rtbsd: support RTM_IFANNOUNCE messages

2015-07-28 Thread Thadeu Lima de Souza Cascardo
On Tue, Jul 28, 2015 at 10:22:47AM -0700, Ben Pfaff wrote: > On Tue, Jul 28, 2015 at 09:48:56AM -0300, Thadeu Lima de Souza Cascardo wrote: > > On Mon, Jul 27, 2015 at 03:46:28PM -0700, Ben Pfaff wrote: > > > On Mon, Jul 27, 2015 at 02:24:19PM -0300, Thadeu Lima de Souza Cascardo > > > wrote: > >

Re: [ovs-dev] [bracnh-2.3] vlan-splinter: Do not check for ipv6 address.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 10:32:27AM -0700, Alex Wang wrote: > When ovs cleans up unused vlan sub interfaces created by vlan splinter > feature, it will not touch interface that has ip address assigned. > However, the get_in6() function implemented in netdev-linux module > is buggy and always returns

[ovs-dev] [bracnh-2.3] vlan-splinter: Do not check for ipv6 address.

2015-07-28 Thread Alex Wang
When ovs cleans up unused vlan sub interfaces created by vlan splinter feature, it will not touch interface that has ip address assigned. However, the get_in6() function implemented in netdev-linux module is buggy and always returns 0 (found ipv6 address). This causes the vlan splinter created sub

Re: [ovs-dev] [PATCH 2/3] rtbsd: support RTM_IFANNOUNCE messages

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 09:48:56AM -0300, Thadeu Lima de Souza Cascardo wrote: > On Mon, Jul 27, 2015 at 03:46:28PM -0700, Ben Pfaff wrote: > > On Mon, Jul 27, 2015 at 02:24:19PM -0300, Thadeu Lima de Souza Cascardo > > wrote: > > > When devices are created, they are announced using RTM_IFANNOUNCE

Re: [ovs-dev] [PATCH v2 04/21] ovn-controller: Explicitly pass the flow table from function to function.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 28, 2015 at 11:50:07AM -0400, Russell Bryant wrote: > On 07/28/2015 11:44 AM, Ben Pfaff wrote: > > As I was working in ovn-controller, I found it hard to tell what code > > produced and what code consumed the OpenFlow flow table, because it was > > all implicit. This commit makes the d

Re: [ovs-dev] [PATCH V2 2/4] netdev-linux: Make netdev_linux_notify_sock join RTNLGRP_IPV4_IFADDR and RTNLGRP_IPV6_IFADDR.

2015-07-28 Thread Alex Wang
On Tue, Jul 28, 2015 at 9:30 AM, Alex Wang wrote: > Thx for the review, adopt the suggestion, > > applied to branch2.3, 2.4, master~ > When backporting to branch-2.3, found few conflicts... also, considering that, get_in4, is only used for vlan-splinter check... we should fix it the simple wa

Re: [ovs-dev] [PATCH v2] datapath-windows: Fixed spelling errors in OVS

2015-07-28 Thread Ben Pfaff
OK, done. On Tue, Jul 28, 2015 at 04:58:23PM +, Sorin Vinturis wrote: > Ben, could you also apply this patch to the 2.4 branch? > > Thanks, > Sorin > > -Original Message- > From: Ben Pfaff [mailto:b...@nicira.com] > Sent: Thursday, 16 July, 2015 21:43 > To: Sorin Vinturis > Cc: dev@

Re: [ovs-dev] [PATCH v2] datapath-windows: Fixed spelling errors in OVS

2015-07-28 Thread Sorin Vinturis
Ben, could you also apply this patch to the 2.4 branch? Thanks, Sorin -Original Message- From: Ben Pfaff [mailto:b...@nicira.com] Sent: Thursday, 16 July, 2015 21:43 To: Sorin Vinturis Cc: dev@openvswitch.org Subject: Re: [ovs-dev] [PATCH v2] datapath-windows: Fixed spelling errors in OV

Re: [ovs-dev] [PATCH V2 2/4] netdev-linux: Make netdev_linux_notify_sock join RTNLGRP_IPV4_IFADDR and RTNLGRP_IPV6_IFADDR.

2015-07-28 Thread Alex Wang
Thx for the review, adopt the suggestion, applied to branch2.3, 2.4, master~ On Tue, Jul 28, 2015 at 8:06 AM, Ben Pfaff wrote: > On Mon, Jul 27, 2015 at 11:56:28PM -0700, Alex Wang wrote: > > Currently the netdev_linux_notify_sock only joins multicast group > > RTNLGRP_LINK for link status chan

Re: [ovs-dev] Inter-op openvswitch and openfcoe

2015-07-28 Thread Jesse Gross
On Tue, Jul 28, 2015 at 8:26 AM, Anoob Soman wrote: > On 27/07/15 22:53, Jesse Gross wrote: >> On Mon, Jul 27, 2015 at 9:59 AM, Anoob Soman >> wrote: >> #2: Add some mechanism where these daemons can talk to OVS and have >> them cooperate to get the appropriate packets, while still keeping the

Re: [ovs-dev] [PATCH v2 04/21] ovn-controller: Explicitly pass the flow table from function to function.

2015-07-28 Thread Russell Bryant
On 07/28/2015 11:44 AM, Ben Pfaff wrote: > As I was working in ovn-controller, I found it hard to tell what code > produced and what code consumed the OpenFlow flow table, because it was > all implicit. This commit makes the data structure an explicit variable > in the main loop, which makes it ea

[ovs-dev] [PATCH v2 08/21] ovn-controller: Tolerate missing integration bridge.

2015-07-28 Thread Ben Pfaff
Until now, if the integration bridge was missing, ovn-controller exited. This commit makes it wait until the integration bridge is created. Signed-off-by: Ben Pfaff --- ovn/controller/binding.c| 4 +++- ovn/controller/encaps.c | 2 +- ovn/controller/ofctrl.c | 16 ++

Re: [ovs-dev] [PATCH v2] doc: Document proposed OVN Gateway HA design.

2015-07-28 Thread Ben Pfaff
On Tue, Jul 21, 2015 at 12:04:03PM -0700, Ethan Jackson wrote: > High availability for gateways in network virtualization deployments > is fairly difficult to get right. There are a ton of options, most of > which are too complicated or perform badly. To help solve this > problem, this patch prop

[ovs-dev] [PATCH v2 19/21] rule: Introduce MFF_LOG_DATAPATH macro for consistency.

2015-07-28 Thread Ben Pfaff
The other logical fields have their own macros, so the logical datapath field might as well have one. Signed-off-by: Ben Pfaff --- ovn/controller/physical.c | 10 +- ovn/controller/rule.h | 7 --- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/ovn/controller/phys

[ovs-dev] [PATCH v2 20/21] ofctrl: Negotiate OVN Geneve option.

2015-07-28 Thread Ben Pfaff
This won't really get used until the next commit. Signed-off-by: Ben Pfaff --- ovn/controller/ofctrl.c | 470 ovn/controller/ofctrl.h | 5 +- ovn/controller/ovn-controller.c | 6 +- ovn/controller/physical.h | 7 + 4 files chan

[ovs-dev] [PATCH v2 17/21] ovn: Rename Pipeline table to Rule table.

2015-07-28 Thread Ben Pfaff
The OVN pipeline is being split into two phases, which are most naturally called "pipelines". I kept getting very confused trying to call them anything else, and in the end it seems to make more sense to just rename the Pipeline table. It would be even better to call this table Flow or Logical_Fl

[ovs-dev] [PATCH v2 18/21] actions: Allow caller to specify output table.

2015-07-28 Thread Ben Pfaff
When an upcoming commit divides the pipeline up into ingress and egress pipeline, it will become necessary to resubmit to different tables from each of those pipelines to implement output. This commit makes that possible. Signed-off-by: Ben Pfaff --- ovn/controller/rule.c | 2 +- ovn/lib/actio

[ovs-dev] [PATCH v2 16/21] ovn: Rename Binding table to Port_Binding.

2015-07-28 Thread Ben Pfaff
An upcoming patch will add a Datapath_Binding table, so clarifying the name seems useful. Signed-off-by: Ben Pfaff --- ovn/controller/binding.c | 28 ++--- ovn/controller/physical.c | 4 +- ovn/controller/pipeline.c | 4 +- ovn/northd/ovn-northd.c | 105 --

[ovs-dev] [PATCH v2 12/21] ovn-controller: Slightly adjust pipeline init and destroy for consistency.

2015-07-28 Thread Ben Pfaff
This drops an unused parameter and groups the calls to these functions with ofctrl_destroy() in each case. Signed-off-by: Ben Pfaff --- ovn/controller/ovn-controller.c | 5 ++--- ovn/controller/pipeline.c | 2 +- ovn/controller/pipeline.h | 2 +- 3 files changed, 4 insertions(+), 5 d

[ovs-dev] [PATCH v2 15/21] nroff: Add support for 'diagram' XML element for protocol headers.

2015-07-28 Thread Ben Pfaff
This will be used in documentation for an upcoming change, to document how Geneve OVN options are encoded. The code in this change is from a series (not yet submitted) that makes much more extensive use of it for documenting protocol headers. Signed-off-by: Ben Pfaff --- python/build/nroff.py |

[ovs-dev] [PATCH v2 14/21] smap: New function smap_get_uuid().

2015-07-28 Thread Ben Pfaff
To be used in an upcoming commit. Signed-off-by: Ben Pfaff Acked-by: Russell Bryant --- lib/smap.c | 13 - lib/smap.h | 4 +++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/lib/smap.c b/lib/smap.c index 7fe3ce4..9badedd 100644 --- a/lib/smap.c +++ b/lib/smap.c @@

[ovs-dev] [PATCH v2 13/21] ovn-controller: Use controller_ctx just to pass around data.

2015-07-28 Thread Ben Pfaff
Until now, controller_ctx has been a store of common state (although the amount of data stored in it has declined to just database state). I think it's clearer if we just use it as a way to pass data to functions. This commit makes that change. Signed-off-by: Ben Pfaff --- ovn/controller/ovn-co

[ovs-dev] [PATCH v2 09/21] ovn-controller: Tolerate missing 'chassis_id'.

2015-07-28 Thread Ben Pfaff
Until now, if the chassis id was missing, ovn-controller exited. This commit makes ovn-controller wait for it to return. Signed-off-by: Ben Pfaff --- ovn/controller/binding.c| 3 +++ ovn/controller/chassis.c| 4 ovn/controller/ovn-controller.c | 38 +--

[ovs-dev] [PATCH v2 11/21] ovn-controller: Honor external-ids:ovn-bridge changing.

2015-07-28 Thread Ben Pfaff
Until now, if external-ids:ovn-bridge changed, ovn-controller ignored the change. With this commit, ovn-controller uses the new bridge. Signed-off-by: Ben Pfaff --- ovn/controller/ovn-controller.c | 81 + 1 file changed, 33 insertions(+), 48 deletions(-)

[ovs-dev] [PATCH v2 10/21] ovn-controller: Rename init functions that just register IDL columns.

2015-07-28 Thread Ben Pfaff
The generic *_init() names for these functions made it sounds like they do something more than just register IDL columns, even though that's all they do. Also, the controller_ctx that was passed into each of them was only used to get the IDL handle. This commit renames them and changes their para

[ovs-dev] [PATCH v2 05/21] ovn-controller: Pass 'br_int' explicitly to functions that need it.

2015-07-28 Thread Ben Pfaff
I found it hard otherwise to see what code depended on this. Signed-off-by: Ben Pfaff Acked-by: Russell Bryant --- ovn/controller/binding.c| 12 ++-- ovn/controller/binding.h| 3 ++- ovn/controller/chassis.c| 22 +++--- ovn/controller/chassis.h

[ovs-dev] [PATCH v2 07/21] ovn-controller: Pass 'chassis_id' explicitly to functions that need it.

2015-07-28 Thread Ben Pfaff
I found it otherwise difficult to see what code depended on this. Signed-off-by: Ben Pfaff --- ovn/controller/binding.c| 13 +++-- ovn/controller/binding.h| 5 +++-- ovn/controller/chassis.c| 14 +++--- ovn/controller/chassis.h| 4 ++-- ovn/contr

[ovs-dev] [PATCH v2 03/21] ovn-controller: Avoid blocking to commit OVSDB transactions.

2015-07-28 Thread Ben Pfaff
Until now, ovn-controller has been full of loops that commit a transaction to the OVS or OVN Southbound database. These blocking loops delay other work within ovn-controller. They also make it unsafe to keep pointers to database records within a single ovn-controller main loop, since calls to ovs

[ovs-dev] [PATCH v2 06/21] ovn-controller: Factor encapsulation code out of chassis code.

2015-07-28 Thread Ben Pfaff
These two pieces of code have different requirements and hardly anything in common, and I found it easier to understand and reasonably modify the overall structure of the program when they were separated. Signed-off-by: Ben Pfaff --- ovn/controller/automake.mk | 2 + ovn/controller

[ovs-dev] [PATCH v2 02/21] ovn-controller: Drop unnecessary checks for ovsdb_idl_is_alive().

2015-07-28 Thread Ben Pfaff
The IDLs as created by ovn-controller always retry failed connections, which means that ovsdb_idl_is_alive() will always report that they are alive. Signed-off-by: Ben Pfaff Acked-by: Russell Bryant --- ovn/controller/ovn-controller.c | 16 1 file changed, 16 deletions(-) diff

[ovs-dev] [PATCH v2 04/21] ovn-controller: Explicitly pass the flow table from function to function.

2015-07-28 Thread Ben Pfaff
As I was working in ovn-controller, I found it hard to tell what code produced and what code consumed the OpenFlow flow table, because it was all implicit. This commit makes the data structure an explicit variable in the main loop, which makes it easier to see. Signed-off-by: Ben Pfaff --- ovn/

[ovs-dev] [PATCH v2 00/21] Change strategy for tunnel keys

2015-07-28 Thread Ben Pfaff
This is mostly a rebase versus v1. A few patches have been acked, and patch 1 includes a bug fix. Ben Pfaff (21): ovn-controller: Fix potential use-after-free in get_core_config(). ovn-controller: Drop unnecessary checks for ovsdb_idl_is_alive(). ovn-controller: Avoid blocking to commit OVS

[ovs-dev] [PATCH v2 01/21] ovn-controller: Fix potential use-after-free in get_core_config().

2015-07-28 Thread Ben Pfaff
It's unsafe to hold a pointer to a row in the IDL across calls to ovsdb_idl_run() for that IDL. Signed-off-by: Ben Pfaff Acked-by: Russell Bryant --- v1->v2: Call ovsdb_idl_run() before instead of after accessing IDL. --- ovn/controller/ovn-controller.c | 19 +-- 1 file changed,

Re: [ovs-dev] [PATCH 22/22] ovn: Change strategy for tunnel keys.

2015-07-28 Thread Ben Pfaff
On Wed, Jul 22, 2015 at 05:17:22PM +, Chandran, Sugesh wrote: > I am just trying out this new patches in my OVN setup. > This setup has two logical network span across two nodes/Chassis. > I found two issues with the new patch set as below > 1) The controller cannot start properly due to the

Re: [ovs-dev] [PATCH 03/22] ovn-controller: Avoid blocking to commit OVSDB transactions.

2015-07-28 Thread Ben Pfaff
On Sat, Jul 25, 2015 at 11:31:48PM -0700, Alex Wang wrote: > Also, could we add 'commit' to function name like > idl_loop_commit_and_wait()? I just assumed that the idl_loop_wait() just > waits... but it actually commits as well, OK, I'll make that change for v2.

Re: [ovs-dev] [PATCH 03/22] ovn-controller: Avoid blocking to commit OVSDB transactions.

2015-07-28 Thread Ben Pfaff
On Wed, Jul 22, 2015 at 04:26:48PM -0400, Russell Bryant wrote: > On 07/19/2015 06:44 PM, Ben Pfaff wrote: > > Until now, ovn-controller has been full of loops that commit a transaction > > to the OVS or OVN Southbound database. These blocking loops delay other > > work within ovn-controller. The

Re: [ovs-dev] [PATCH 01/22] ovn-controller: Fix potential use-after-free in get_core_config().

2015-07-28 Thread Ben Pfaff
On Sat, Jul 25, 2015 at 11:04:13PM -0700, Alex Wang wrote: > On Sun, Jul 19, 2015 at 3:44 PM, Ben Pfaff wrote: > > > It's unsafe to hold a pointer to a row in the IDL across calls to > > ovsdb_idl_run() for that IDL. > > > > Signed-off-by: Ben Pfaff > > --- > > ovn/controller/ovn-controller.c |

  1   2   >