[ovs-dev] [PATCH v3 02/13] tests: Keyword fixes.

2016-09-12 Thread Jarno Rajahalme
Add "bundle" keyword to ofp-print.at tests about bundle messages. Add a missing ofp-print.at test for bundle group mods. Remove "monitor" keyword from ofproto.at tests that do not use a monitor. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- v3: New patch for v3.

[ovs-dev] [PATCH v3 08/13] ofproto-dpif-xlate: Add xlate cache type XC_TABLE.

2016-09-12 Thread Jarno Rajahalme
stats explicitly. Fixes: b256dc52 ("ofproto-dpif-xlate: Cache xlate_actions() effects.") Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- v3: Add the NEWS flash. NEWS | 3 +++ ofproto/ofproto-dpif-xlate-cache.c | 10 ++ ofproto/ofproto-dp

[ovs-dev] [PATCH v3 09/13] ofproto: Use ofproto_flow_mod for learn execution from xlate cache.

2016-09-12 Thread Jarno Rajahalme
a new rule using the old rule as a template, so that we can avoid storing the ofputil_flow_mod in all cases. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- v3: Fixed error handling, simplified reference keeping. ofproto/ofproto-dpif-xlate-cache.c | 14 +- ofproto/ofproto-dpif-xlate-c

[ovs-dev] [PATCH v3 07/13] ofproto-dpif-xlate: Expose xlate cache.

2016-09-12 Thread Jarno Rajahalme
so that it now does not take the xlate cache pointer to unify the usage accross all call sites. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- v3: Separated xlate cache to it's own module. ofproto/automake.mk| 2 + ofproto/ofproto-dpif-upcall.c | 1 + ofproto/o

[ovs-dev] [PATCH v3 05/13] connmgr: Make connmgr_wants_packet_in_on_miss() lock-free.

2016-09-12 Thread Jarno Rajahalme
(). Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- v3: Fix the totally broken behavior with a help of a per-ofconn boolean. ofproto/connmgr.c | 80 ++ ofproto/ofproto-dpif.c | 12 ofproto/ofproto-dpif.h | 1 - 3 files chang

Re: [ovs-dev] [PATCH v2 11/15] ofproto: Use ofproto_flow_mod for learn execution from xlate cache.

2016-09-09 Thread Jarno Rajahalme
I’ll rebase this for v3 anyway, but see the answers to the questions below: > On Aug 29, 2016, at 4:57 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:37PM -0700, Jarno Rajahalme wrote: >> Use ofproto_flow_mod with a reference to an existing o

Re: [ovs-dev] [PATCH] system-traffic: Add FTP NAT test without seqadj.

2016-09-07 Thread Jarno Rajahalme
Assuming the test is otherwise identical, Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Sep 7, 2016, at 2:07 PM, Joe Stringer <j...@ovn.org> wrote: > > The existing FTP with NAT tests all perform NATing from an IP like > 10.1.1.1 -> 10.1.1.240, which requires

Re: [ovs-dev] [PATCH] xlate: Perform bridge lookup before using xlate cache.

2016-09-06 Thread Jarno Rajahalme
> On Sep 6, 2016, at 4:24 PM, Joe Stringer <j...@ovn.org> wrote: > > On 2 September 2016 at 17:43, Jarno Rajahalme <ja...@ovn.org> wrote: >> Bridges might get deleted while revalidation is going through the >> xlate cache entries. Thus we need to do the xbridge

Re: [ovs-dev] [PATCH] xlate: Clarify comment about mac learning table entry locking.

2016-09-06 Thread Jarno Rajahalme
> On Sep 2, 2016, at 6:37 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Fri, Sep 02, 2016 at 05:50:41PM -0700, Jarno Rajahalme wrote: >> The rationale for locking mac learning table entires wrt. gratuitous >> ARP packets and bond interfaces was too cryptic for me to u

[ovs-dev] [PATCH] xlate: Clarify comment about mac learning table entry locking.

2016-09-02 Thread Jarno Rajahalme
The rationale for locking mac learning table entires wrt. gratuitous ARP packets and bond interfaces was too cryptic for me to understand. After reading vswitchd/INTERNALS the issue is understandable, but we can still improve the comment to prevent such confusion in future. Signed-off-by: Jarno

[ovs-dev] [PATCH] xlate: Perform bridge lookup before using xlate cache.

2016-09-02 Thread Jarno Rajahalme
the learned flow or mac table on a peer bridge if the first bridge is deleted. Such cases should be very rare though, as no-one has reported this bug so far. So it appears that this corner-case is not work the code complication covering it would cause. Found by inspection. Signed-off-by: Jarno

Re: [ovs-dev] [PATCH] learn: Fix iteration over learning specs.

2016-09-02 Thread Jarno Rajahalme
Good catch (== thanks for finding an embarrassing bug to mine :-) Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Sep 2, 2016, at 1:26 PM, Ben Pfaff <b...@ovn.org> wrote: > > struct ofpact_learn_spec is variable-length. The 'n_specs' member of > struct ofpact_learn cou

Re: [ovs-dev] [PATCH v2 08/15] connmgr: Make connmgr_wants_packet_in_on_miss() lock-free.

2016-09-01 Thread Jarno Rajahalme
> On Sep 1, 2016, at 4:35 PM, Jarno Rajahalme <ja...@ovn.org> wrote: > > >> On Aug 29, 2016, at 2:49 PM, Ben Pfaff <b...@ovn.org> wrote: >> >> On Mon, Aug 22, 2016 at 04:31:34PM -0700, Jarno Rajahalme wrote: >>> Make connmgr_wants_packet_in_o

Re: [ovs-dev] [PATCH v2 08/15] connmgr: Make connmgr_wants_packet_in_on_miss() lock-free.

2016-09-01 Thread Jarno Rajahalme
> On Aug 29, 2016, at 2:49 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:34PM -0700, Jarno Rajahalme wrote: >> Make connmgr_wants_packet_in_on_miss() use an atomic int instead of a >> list traversal taking the 'o

Re: [ovs-dev] [PATCH v2 05/15] ofproto: Change rule's 'removed' member to a tri-state 'state'.

2016-09-01 Thread Jarno Rajahalme
> On Aug 29, 2016, at 2:40 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:31PM -0700, Jarno Rajahalme wrote: >> As a rule may not be re-inserted to ofproto data structures, it is >> cleaner to have three states for the rule, rather than just t

Re: [ovs-dev] [PATCH] learn: learn_spec fixes.

2016-09-01 Thread Jarno Rajahalme
> On Sep 1, 2016, at 1:18 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Sep 01, 2016 at 01:10:37PM -0700, Jarno Rajahalme wrote: >> Avoid using nested zero-sized arrays to allow compilation with MSVC. >> Also, make sure the immediate data is accessed only if it e

Re: [ovs-dev] broken build windows

2016-09-01 Thread Jarno Rajahalme
> On Sep 1, 2016, at 9:27 AM, Ben Pfaff wrote: > > On Thu, Sep 01, 2016 at 02:57:23PM +, Alin Serdean wrote: >> "error C2233: 'specs' : arrays of objects containing zero-size arrays are >> illegal" >> >> https://ci.appveyor.com/project/blp/ovs >> >> I think it was caused by

[ovs-dev] [PATCH] learn: learn_spec fixes.

2016-09-01 Thread Jarno Rajahalme
Avoid using nested zero-sized arrays to allow compilation with MSVC. Also, make sure the immediate data is accessed only if it exists, and that the size is always calculated from struct learn_spec field 'n_bits'. Reported-by: Alin Serdean <aserd...@cloudbasesolutions.com> Signed-off-by:

Re: [ovs-dev] [PATCHv2 4/4] upcall: Replace ukeys for deleted flows.

2016-08-31 Thread Jarno Rajahalme
With a minor question below, Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Aug 31, 2016, at 11:06 AM, Joe Stringer <j...@ovn.org> wrote: > > If a revalidator dumps/revalidates a flow during the 'dump' phase, > resulting in the deletion of the flow, then ukey->fl

Re: [ovs-dev] [PATCHv2 3/4] upcall: Track ukey states.

2016-08-31 Thread Jarno Rajahalme
With small nits below, Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Aug 31, 2016, at 11:06 AM, Joe Stringer <j...@ovn.org> wrote: > > Ukeys already have a well-defined lifetime that starts from being > created, inserted into the umaps, having the corresponding flow &g

Re: [ovs-dev] [PATCHv2 2/4] upcall: Only init flow_put if ukey is installed.

2016-08-31 Thread Jarno Rajahalme
With one question below, Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Aug 31, 2016, at 11:06 AM, Joe Stringer <j...@ovn.org> wrote: > > Currently when processing a batch of upcalls, all datapath operations > are first initialized, then later the correspon

Re: [ovs-dev] [PATCHv2 1/4] upcall: Reuse flow_put initializer.

2016-08-31 Thread Jarno Rajahalme
Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Aug 31, 2016, at 11:06 AM, Joe Stringer <j...@ovn.org> wrote: > > Signed-off-by: Joe Stringer <j...@ovn.org> > --- > v2: First post > --- > ofproto/ofproto-dpif-upcall.c | 24 > 1 f

Re: [ovs-dev] [PATCH v2 1/5] ofproto-dpif-xlate: Don't unwildcard tunnel attributes on set.

2016-08-31 Thread Jarno Rajahalme
I’d put the registers and metadata field to the ‘false’ and also maybe non-writeable fields (ether type, frags, nw_proto, etc.) in to OVS_NOT_REACHED() case, just in case. Jarno > On Aug 31, 2016, at 10:38 AM, Jesse Gross wrote: > > On Tue, Aug 30, 2016 at 6:47 PM,

Re: [ovs-dev] [PATCH 2/2] ofp-actions: Waste less memory in set field and load actions.

2016-08-31 Thread Jarno Rajahalme
> On Aug 31, 2016, at 9:55 AM, Ben Pfaff <b...@ovn.org> wrote: > > On Wed, Aug 31, 2016 at 08:53:20AM -0700, Jarno Rajahalme wrote: >> Pushed to master. How about branch-2.6? > > I'm inclined to put both of these on branch-2

Re: [ovs-dev] [PATCH 1/2] ofp-actions: Waste less memory in learn actions.

2016-08-31 Thread Jarno Rajahalme
> On Aug 30, 2016, at 8:55 AM, Ben Pfaff <b...@ovn.org> wrote: > > On Tue, Aug 23, 2016 at 05:51:36PM -0700, Jarno Rajahalme wrote: >> Make the immediate data member 'src_imm' of a learn spec allocated at >> the end of the action for just the right size. This, toge

Re: [ovs-dev] [PATCH 2/2] ofp-actions: Waste less memory in set field and load actions.

2016-08-31 Thread Jarno Rajahalme
> On Aug 30, 2016, at 9:06 AM, Ben Pfaff <b...@ovn.org> wrote: > > On Tue, Aug 23, 2016 at 05:51:37PM -0700, Jarno Rajahalme wrote: >> Change the value and mask to be added to the end of the set field >> action without any extra bytes, exept for the usual ofp-ac

Re: [ovs-dev] [PATCH v2 14/15] ofproto: Refactor packet_out handling.

2016-08-30 Thread Jarno Rajahalme
> On Aug 30, 2016, at 8:40 AM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:40PM -0700, Jarno Rajahalme wrote: >> Refactor handle_packet_out() to prepare for bundle support for packet >> outs in a later patch. >> >> Two new callbacks a

Re: [ovs-dev] [PATCH v2 12/15] ofproto-dpif-xlate: Allow translating without side-effects.

2016-08-30 Thread Jarno Rajahalme
> On Aug 29, 2016, at 5:06 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:38PM -0700, Jarno Rajahalme wrote: >> Extend 'may_learn' attribute to also control the treatment of >> FIN_TIMEOUT action and asynchronous messages (packet ins, >

Re: [ovs-dev] [PATCH v2 09/15] ofproto-dpif-xlate: Expose xlate cache.

2016-08-30 Thread Jarno Rajahalme
> On Aug 29, 2016, at 2:59 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:35PM -0700, Jarno Rajahalme wrote: >> Later patches will need to create xlate cache entries from different >> modules. This patch refactors the xlate cache code in

Re: [ovs-dev] [PATCH v2 07/15] object-collection: Remove access to stub.

2016-08-30 Thread Jarno Rajahalme
Thanks for the review, pushed to master, Jarno > On Aug 29, 2016, at 2:57 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:33PM -0700, Jarno Rajahalme wrote: >> Better not use access to the *_collection_stub(), as it is an internal >> implement

Re: [ovs-dev] [PATCH v2 06/15] ofproto: Remove stale comment.

2016-08-30 Thread Jarno Rajahalme
Pushed to master, Jarno > On Aug 29, 2016, at 2:41 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:32PM -0700, Jarno Rajahalme wrote: >> The previous line tells that this comment is now stale. Remove it. >> >> Signed-off-by: Jarno Raj

Re: [ovs-dev] [PATCH v2 04/15] ofproto-dpif: Remove prototype for an undefined function.

2016-08-30 Thread Jarno Rajahalme
Pushed to master, Jarno > On Aug 29, 2016, at 2:36 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:30PM -0700, Jarno Rajahalme wrote: >> We do not have a 'ofproto_dpif_refresh_rule()' function. >> >> Signed-off-by: Jarno Rajahalme &

Re: [ovs-dev] [PATCH v2] upcall: reduce log level for "no reference to recirc flow" message

2016-08-30 Thread Jarno Rajahalme
Acked-by: Jarno Rajahalme <ja...@ovn.org> Pushed to master and branch-2.6. Jarno > On Aug 29, 2016, at 2:06 PM, Lance Richardson <lrich...@redhat.com> wrote: > > Reduce log level from "warn" to "debug" for "upcall: no reference to > r

Re: [ovs-dev] [PATCH v2 02/15] lib: Retire packet buffering feature.

2016-08-30 Thread Jarno Rajahalme
> On Aug 29, 2016, at 2:07 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 22, 2016 at 04:31:28PM -0700, Jarno Rajahalme wrote: >> OVS implementation of buffering packets that are sent to the >> controller is not compliant with the OpenFlow specifications a

Re: [ovs-dev] [PATCH] system-traffic: Ignore "no reference for recirc flow" in ct controller test

2016-08-29 Thread Jarno Rajahalme
Lance, We discussed this off-line last week and the proper fix would be to change the log level for that message to to debug. Could you post a patch to do that? Jarno > On Aug 29, 2016, at 1:28 PM, Lance Richardson wrote: > > The conntrack - controller test case

[ovs-dev] [PATCH 2/2] ofp-actions: Waste less memory in set field and load actions.

2016-08-23 Thread Jarno Rajahalme
representation is also used for load actions). On a specific production data set each flow entry uses on average about 4.1 load and set field actions. This means that with this patch an average of more than 1kb can be saved for each flow with such a flow table. Signed-off-by: Jarno Rajahalme <

[ovs-dev] [PATCH 1/2] ofp-actions: Waste less memory in learn actions.

2016-08-23 Thread Jarno Rajahalme
to saving about 0.5kb for each learn action. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- include/openvswitch/meta-flow.h | 14 include/openvswitch/ofp-actions.h | 42 +++ lib/learn.c | 72 ++- li

[ovs-dev] [PATCH v2 15/15] ofproto: Support packet_outs in bundles.

2016-08-22 Thread Jarno Rajahalme
bundle is successful. A failing packet-out translation may also make the whole bundle to fail. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- NEWS| 3 +- include/openvswitch/ofp-parse.h | 5 ++ include/openvswitch/ofp-util.h | 1 + lib/ofp-p

[ovs-dev] [PATCH v2 09/15] ofproto-dpif-xlate: Expose xlate cache.

2016-08-22 Thread Jarno Rajahalme
Later patches will need to create xlate cache entries from different modules. This patch refactors the xlate cache code in preparation without any functional changes, so that the changes are clearly visible in the following patches. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- o

[ovs-dev] [PATCH v2 08/15] connmgr: Make connmgr_wants_packet_in_on_miss() lock-free.

2016-08-22 Thread Jarno Rajahalme
(). Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/connmgr.c | 59 ++ ofproto/ofproto-dpif.c | 12 -- ofproto/ofproto-dpif.h | 1 - 3 files changed, 40 insertions(+), 32 deletions(-) diff --git a/ofproto/connmgr.c b/o

[ovs-dev] [PATCH v2 12/15] ofproto-dpif-xlate: Allow translating without side-effects.

2016-08-22 Thread Jarno Rajahalme
support for one-time asynchronous messages to xlate cache, so that all side-effects of the translation may be executed at a later stage. This will be useful for bundle commits. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-dpif-xlate.

[ovs-dev] [PATCH v2 14/15] ofproto: Refactor packet_out handling.

2016-08-22 Thread Jarno Rajahalme
ut defers all OpenFlow-visible side-effects (stats, learn actions, actual packet output, etc.) to be explicitly executed with the ->packet_execute() call. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-dpif-upcall.c | 11 +- ofproto/ofproto-dpif-xlate.c | 45 ---

[ovs-dev] [PATCH v2 10/15] ofproto-dpif-xlate: Add xlate cache type XC_TABLE.

2016-08-22 Thread Jarno Rajahalme
. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-dpif-xlate.c | 16 +--- ofproto/ofproto-dpif-xlate.h | 6 ++ ofproto/ofproto-dpif.c | 34 +- ofproto/ofproto-dpif.h | 8 +++- 4 files changed, 59 insertions

[ovs-dev] [PATCH v2 13/15] coverage: Rename init functions to avoid symbol collisions.

2016-08-22 Thread Jarno Rajahalme
ofproto now uses various *_init() functions, so use something else for coverage constructors. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- lib/coverage.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/coverage.h b/lib/coverage.h index 34a04aa..6d49fe0

[ovs-dev] [PATCH v2 11/15] ofproto: Use ofproto_flow_mod for learn execution from xlate cache.

2016-08-22 Thread Jarno Rajahalme
to the ofproto_flow_mod, from which it is then added. If the referred rule happens to expire and is removed from the classifier tables, we create a new rule using the old rule as a template, so that we can avoid storing the ofputil_flow_mod in all cases. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- o

[ovs-dev] [PATCH v2 07/15] object-collection: Remove access to stub.

2016-08-22 Thread Jarno Rajahalme
Better not use access to the *_collection_stub(), as it is an internal implementation detail. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- lib/object-collection.h | 5 - ofproto/ofproto.c | 10 +- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/lib/

[ovs-dev] [PATCH v2 05/15] ofproto: Change rule's 'removed' member to a tri-state 'state'.

2016-08-22 Thread Jarno Rajahalme
As a rule may not be re-inserted to ofproto data structures, it is cleaner to have three states for the rule, rather than just two. This will be useful for managing learned flows in later patches. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-provider.

[ovs-dev] [PATCH v2 06/15] ofproto: Remove stale comment.

2016-08-22 Thread Jarno Rajahalme
The previous line tells that this comment is now stale. Remove it. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 48d7b8f..97ed61a 100644 --- a/ofproto/ofproto.c +++ b/o

[ovs-dev] [PATCH v2 04/15] ofproto-dpif: Remove prototype for an undefined function.

2016-08-22 Thread Jarno Rajahalme
We do not have a 'ofproto_dpif_refresh_rule()' function. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-dpif.h | 1 - 1 file changed, 1 deletion(-) diff --git a/ofproto/ofproto-dpif.h b/ofproto/ofproto-dpif.h index f1e1209..a3b1d6b 100644 --- a/ofproto/ofproto-dpif.h

[ovs-dev] [PATCH v2 02/15] lib: Retire packet buffering feature.

2016-08-22 Thread Jarno Rajahalme
buffering is an optional OpenFlow feature, and as such any possible users should continue to work without this feature. This patch also makes OVS check the received 'buffer_id' values more rigorously, and fixes some internal users accordingly. Signed-off-by: Jarno Rajahalme <ja...@ovn.

[ovs-dev] [PATCH v2 03/15] types.h: Move mirror_mask_t here.

2016-08-22 Thread Jarno Rajahalme
Move mirror_mask_t from ofproto/ofproto-dpif-mirror.h to openvswitch/types.h to avoid including function definitions with colliding names (e.g., mirror_destroy(), which is also the name of a static function in bridge.c). Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- include/openv

[ovs-dev] [PATCH v2 01/15] vswitchd: Deprecate packet buffering in OVS 2.7.

2016-08-22 Thread Jarno Rajahalme
. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- FAQ.md | 8 NEWS | 8 2 files changed, 16 insertions(+) diff --git a/FAQ.md b/FAQ.md index 6d23443..43d5ba5 100644 --- a/FAQ.md +++ b/FAQ.md @@ -2011,6 +2011,14 @@ A: When a switch sends a packet to an OpenFlow controller

[ovs-dev] [PATCH v2 00/15] ofproto: Deprecate packet buffering and support packet-outs in bundles.

2016-08-22 Thread Jarno Rajahalme
by the xlate cache. Patch 11/15 reduces the overhead of each translated and cached learn action from about 3.5kb to about 0.3kb. Remainder of the series implements bundle support for PACKET_OUT messages. Jarno Rajahalme (15): vswitchd: Deprecate packet buffering in OVS 2.7. lib: Retire packet

[ovs-dev] [PATCH] lib: Retire packet buffering feature.

2016-08-19 Thread Jarno Rajahalme
buffering is an optional OpenFlow feature, and as such any possible users should continue to work without this feature. This patch also makes OVS check the received 'buffer_id' values more rigorously, and fixes some internal users accordingly. Signed-off-by: Jarno Rajahalme <ja...@ovn.

Re: [ovs-dev] [PATCH] upcall: Log failure to flow_put for dpif-netlink.

2016-08-18 Thread Jarno Rajahalme
Looks goos except for a small style nit below. Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Aug 18, 2016, at 2:50 PM, Joe Stringer <j...@ovn.org> wrote: > > Previously these errors were only logged for dpif-netdev. Make it > consistent by merging the code for both da

[ovs-dev] [PATCH 10/10] ofproto: Use ofproto_flow_mod for learn execution from xlate cache.

2016-08-18 Thread Jarno Rajahalme
to the ofproto_flow_mod, from which it is then added. If the referred rule happens to expire and is removed from the classifier tables, we create a new rule using the old rule as a template, so that we can avoid storing the ofputil_flow_mod in all cases. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- o

[ovs-dev] [PATCH 08/10] ofproto-dpif-xlate: Expose xlate cache.

2016-08-18 Thread Jarno Rajahalme
Later patches will need to create xlate cache entries from different modules. This patch refactors the xlate cache code in preparation without any functional changes, so that the changes are clearly visible in the following patches. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- o

[ovs-dev] [PATCH 06/10] object-collection: Remove access to stub.

2016-08-18 Thread Jarno Rajahalme
Better not use access to the *_collection_stub(), as it is an internal implementation detail. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- lib/object-collection.h | 5 - ofproto/ofproto.c | 10 +- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/lib/

[ovs-dev] [PATCH 03/10] ofproto: Change rule's 'removed' member to a tri-state 'state'.

2016-08-18 Thread Jarno Rajahalme
As a rule may not be re-inserted to ofproto data structures, it is cleaner to have three states for the rule, rather than just two. This will be useful for managing learned flows in later patches. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-provider.

[ovs-dev] [PATCH 05/10] ofproto: Clarify rule_execute packet ownership.

2016-08-18 Thread Jarno Rajahalme
struct rule_execute owns it's 'packet' member, so rule_execute_destroy() should delete it. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 1fc9e30..6

[ovs-dev] [PATCH 09/10] ofproto-dpif-xlate: Add xlate cache type XC_TABLE.

2016-08-18 Thread Jarno Rajahalme
. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-dpif-xlate.c | 16 +--- ofproto/ofproto-dpif-xlate.h | 6 ++ ofproto/ofproto-dpif.c | 34 +- ofproto/ofproto-dpif.h | 8 +++- 4 files changed, 59 insertions

[ovs-dev] [PATCH 07/10] connmgr: Make connmgr_wants_packet_in_on_miss() lock-free.

2016-08-18 Thread Jarno Rajahalme
(). Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/connmgr.c | 59 ++ ofproto/ofproto-dpif.c | 12 -- ofproto/ofproto-dpif.h | 1 - 3 files changed, 40 insertions(+), 32 deletions(-) diff --git a/ofproto/connmgr.c b/o

[ovs-dev] [PATCH 00/10] ofproto fixes.

2016-08-18 Thread Jarno Rajahalme
work towards properly implementing buffered packet execution from bundles, as well as adding bundle support for PACKET_OUT messages. I decided to post this series separately now, so we may decide if we want to apply these to the branch 2.6 as will, while it is still very easy. Jarno Rajahalme (10

[ovs-dev] [PATCH 04/10] ofproto: Remove stale comment.

2016-08-18 Thread Jarno Rajahalme
The previous line tells that this comment is now stale. Remove it. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 2772638..1fc9e30 100644 --- a/ofproto/ofproto.c +++ b/o

[ovs-dev] [PATCH 01/10] types.h: Move mirror_mask_t here.

2016-08-18 Thread Jarno Rajahalme
Move mirror_mask_t from ofproto/ofproto-dpif-mirror.h to openvswitch/types.h to avoid including function definitions with colliding names (e.g., mirror_destroy(), which is also the name of a static function in bridge.c). Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- include/openv

[ovs-dev] [PATCH 02/10] ofproto-dpif: Remove prototype for an undefined function.

2016-08-18 Thread Jarno Rajahalme
We do not have a 'ofproto_dpif_refresh_rule()' function. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- ofproto/ofproto-dpif.h | 1 - 1 file changed, 1 deletion(-) diff --git a/ofproto/ofproto-dpif.h b/ofproto/ofproto-dpif.h index f1e1209..a3b1d6b 100644 --- a/ofproto/ofproto-dpif.h

Re: [ovs-dev] [PATCH] NEWS: NAT and bundles fixes for 2.6 release.

2016-08-18 Thread Jarno Rajahalme
> On Aug 18, 2016, at 3:09 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Aug 18, 2016 at 02:48:20PM -0700, Jarno Rajahalme wrote: >> Mention Conntrack NAT support for Linux datapath. Resolve conflicting >> NEWS about bundles support. Move Linux datapath trun

[ovs-dev] [PATCH] NEWS: NAT and bundles fixes for 2.6 release.

2016-08-18 Thread Jarno Rajahalme
Mention Conntrack NAT support for Linux datapath. Resolve conflicting NEWS about bundles support. Move Linux datapath truncate action support NEWS to be under the "Linux" heading. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- NEWS | 9 + 1 file changed, 5

Re: [ovs-dev] Hitless resynchronisation of forwarding state

2016-08-15 Thread Jarno Rajahalme
> On Aug 8, 2016, at 3:46 PM, Jan Scheurich <jan.scheur...@ericsson.com> wrote: > >> From: Jarno Rajahalme [mailto:ja...@ovn.org] >> Sent: Friday, 29 July, 2016 20:38 >> >>> Twice the memory of the steady state footprint would still be a significant >&g

Re: [ovs-dev] [PATCH v4] ofproto: Reduce bundle memory use.

2016-08-15 Thread Jarno Rajahalme
> On Aug 15, 2016, at 11:19 AM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 15, 2016 at 10:57:32AM -0700, Ben Pfaff wrote: >> On Mon, Aug 15, 2016 at 10:43:45AM -0700, Jarno Rajahalme wrote: >>> >>>> On Aug 14, 2016, at 5:34 PM, Ben Pfaff <b

Re: [ovs-dev] [PATCH v4] ofproto: Reduce bundle memory use.

2016-08-15 Thread Jarno Rajahalme
> On Aug 14, 2016, at 5:34 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Mon, Aug 08, 2016 at 11:26:30AM -0700, Jarno Rajahalme wrote: >> Instead of storing the (big) struct ofputil_flow_mod, create the new >> rule and/or create the rule criteria for matching at bu

Re: [ovs-dev] [PATCH] Revert "pvector: Expose non-concurrent priority vector."

2016-08-10 Thread Jarno Rajahalme
gt;> > > > 2016-08-09 13:59 GMT-07:00 Jarno Rajahalme <ja...@ovn.org > <mailto:ja...@ovn.org>>: > This reverts commit 8bdfe1313894047d44349fa4cf4402970865950f. > > I failed to see that lib/dpif-netdev.c actually needs the concurrency > provided by pvecto

Re: [ovs-dev] [PATCH v3] dpif-netdev: dpcls per in_port with sorted subtables

2016-08-10 Thread Jarno Rajahalme
patch and post a > v5 instead where cpvector is replaced by the old pvector again. > > What is the best procedure for this? I guess I should wait until the revert > patch is merged. But that might delay the review and reduce chances of making > it for 2.6. Please advise. > &g

[ovs-dev] [PATCH] Revert "pvector: Expose non-concurrent priority vector."

2016-08-09 Thread Jarno Rajahalme
of the removed subtable in the vector. Since this was the only use of the non-concurrent pvector, it is cleaner to revert the whole patch. Reported-by: Jan Scheurich <jan.scheur...@ericsson.com> Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- lib/classifier.c| 30 +

Re: [ovs-dev] [PATCH v2 3/3] pvector: Expose non-concurrent priority vector.

2016-08-09 Thread Jarno Rajahalme
> On Aug 8, 2016, at 3:10 PM, Jan Scheurich wrote: > > Hi Jarno, > > While trying to rebase my "dpcls per in_port" patch to your updated > pvector/cpvector implementation, I have stumbled over a threading issue in > your patch. > > I believe that

Re: [ovs-dev] [PATCH v3] dpif-netdev: dpcls per in_port with sorted subtables

2016-08-09 Thread Jarno Rajahalme
> On Aug 9, 2016, at 7:08 AM, Jan Scheurich wrote: > > - Adapted to renamed cpvector API > Reverted dplcs to using cpvector due to threading issue during flow removal Would you be kind and make this a separate patch, with a more detailed commit message. Thanks,

Re: [ovs-dev] [PATCH v3] ofproto: Reduce bundle memory use.

2016-08-08 Thread Jarno Rajahalme
I just sent a v4, no need to review this one. Jarno > On Jul 29, 2016, at 6:37 PM, Jarno Rajahalme <ja...@ovn.org> wrote: > > Instead of storing the (big) struct ofputil_flow_mod, create the new > rule and/or create the rule criteria for matching at bundle message > in

[ovs-dev] [PATCH v4] ofproto: Reduce bundle memory use.

2016-08-08 Thread Jarno Rajahalme
commit. In successful bundles this shifts work out of the ofproto_mutex critical section and should thus reduce the time the mutex is held during bundle commit. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- v4: Fixed comments & memory leak. ofproto/bundles.c | 2 +

Re: [ovs-dev] [PATCH] dpcls_lookup: added comments.

2016-08-05 Thread Jarno Rajahalme
Acked-by: Jarno Rajahalme <ja...@ovn.org> Pushed to master with a rebase and minor edits. Jarno > On Aug 5, 2016, at 6:40 AM, antonio.fische...@intel.com wrote: > > This patch adds some comments to the dpcls_lookup() funtion, > which is one of the most important places w

Re: [ovs-dev] [PATCH] datapath: Remove incorrect WARN_ONCE().

2016-08-04 Thread Jarno Rajahalme
> On Aug 3, 2016, at 3:46 PM, Joe Stringer <j...@ovn.org> wrote: > > On 3 August 2016 at 15:25, Jarno Rajahalme <ja...@ovn.org> wrote: >> Upstream commit: >>ovs_ct_find_existing() issues a warning if an existing conntrack entry >>classified

[ovs-dev] [PATCH] datapath: Remove incorrect WARN_ONCE().

2016-08-03 Thread Jarno Rajahalme
is seen. This has resulted into somewhat confusing kernel log messages. This patch removes this check and warning. Fixes: 289f2253 ("openvswitch: Find existing conntrack entry after upcall.") Suggested-by: Joe Stringer <j...@ovn.org> Signed-off-by: Jar

Re: [ovs-dev] [PATCH] ovs-rcu: Add new ovsrcu_index type.

2016-08-03 Thread Jarno Rajahalme
Looks good to me, Acked-by: Jarno Rajahalme <ja...@ovn.org> > On Aug 2, 2016, at 5:03 PM, Daniele Di Proietto <diproiet...@vmware.com> > wrote: > > With RCU in Open vSwitch it's very easy to protect objects accessed by > a pointer, but sometimes a pointer is not

[ovs-dev] [PATCH v3] ofproto: Reduce bundle memory use.

2016-07-29 Thread Jarno Rajahalme
. Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- v3: Reduced code duplication + use the template rule for the first modified instead of creating another rule for it. ofproto/bundles.c | 2 +- ofproto/bundles.h | 4 +- ofproto/ofproto-provider.h | 43 +++- o

Re: [ovs-dev] [PATCH v2 25/26] ofproto: Add 'command' to ofproto_flow_mod.

2016-07-29 Thread Jarno Rajahalme
Thanks for the reviews Ben! I pushed the series up to this patch to master. Jarno > On Jul 29, 2016, at 4:23 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:17PM -0700, Jarno Rajahalme wrote: >> This helps releasing ofputil_flow_mod ear

Re: [ovs-dev] [PATCH v2 26/26] ofproto: Reduce bundle memory use.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 4:25 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:18PM -0700, Jarno Rajahalme wrote: >> Instead of storing the (big) struct ofputil_flow_mod, create the new >> rule and/or create the rule criteria for matching at bu

Re: [ovs-dev] [PATCH v2 23/26] ofproto: Reduce dependency on ofputil_flow_mod after rule has been created.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 4:20 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:15PM -0700, Jarno Rajahalme wrote: >> One step towards the goal of removing the ofputil_flow_mod from the >> bundle message. >> >> Signed-off-by: Jarno

Re: [ovs-dev] [PATCH v2 19/26] ofproto: Use ofputil_uninit_group_mod().

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 3:59 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:11PM -0700, Jarno Rajahalme wrote: >> Use ofputil_uninit_group_mod() instead of >> ofputil_bucket_list_destroy(). Currently these have the same effect, >> but this

Re: [ovs-dev] [PATCH v2 18/26] ofp-util: Do not free() field that is not allocated.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 3:57 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:10PM -0700, Jarno Rajahalme wrote: >> Group properties field array is not dynamically allocated, so it >> should not be freed. This has not been a problem, as this func

Re: [ovs-dev] [PATCH v2 16/26] meta-flow: Clean up masking with prerequisities checking.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 3:54 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:08PM -0700, Jarno Rajahalme wrote: >> Change mf_are_prereqs_ok() take a flow_wildcards pointer, so that the >> wildcards can be set at the same time as the prerequisiteis

Re: [ovs-dev] [PATCH v2 12/26] vconn: Better bundle error management.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 1:32 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:04PM -0700, Jarno Rajahalme wrote: >> It is possible that a bundle add message fails, but the following >> commit succeeds, since the message was not added to the bundle.

Re: [ovs-dev] [PATCH v2 11/26] vconn: Update length of bundled messages.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 1:20 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:03PM -0700, Jarno Rajahalme wrote: >> Variable length messages need their length updated before they can be >> added to the bundle. >> >> Message length up

Re: [ovs-dev] [PATCH v2 10/26] ofproto: Make groups versioned.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 1:18 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:02PM -0700, Jarno Rajahalme wrote: >> This is a prepatory step for adding group mod support for bundles in a >> following patch. >> >> Signed-off-by: Jarno Raj

Re: [ovs-dev] [PATCH v2 09/26] ofproto: refactor group mods.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 1:07 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:56:01PM -0700, Jarno Rajahalme wrote: >> This changes ofproto providers modify_group() to never fail. >> >> Separating major refactoring to a separate patch should

Re: [ovs-dev] [PATCH v2 06/26] ofproto: Add generic ofproto_collection.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 12:46 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:55:58PM -0700, Jarno Rajahalme wrote: >> Define rule_collection in terms of a new ofproto_collection. This >> makes it easier to add other types of collections lat

Re: [ovs-dev] [PATCH v2 05/26] ofproto: Use ofproto_mutex for groups and keep track of referring flows.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 1:41 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Fri, Jul 29, 2016 at 01:19:03PM -0700, Jarno Rajahalme wrote: >> >>> On Jul 29, 2016, at 12:33 PM, Ben Pfaff <b...@ovn.org> wrote: >>> >>> On Thu, Jul 28, 2016 at 05:55

Re: [ovs-dev] [PATCH v2 05/26] ofproto: Use ofproto_mutex for groups and keep track of referring flows.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 12:33 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:55:57PM -0700, Jarno Rajahalme wrote: >> Adding groups support for bundles is simpler if also groups are >> modified under ofproto_mutex. >> >> Eliminate the se

Re: [ovs-dev] [PATCH v2 02/26] ofproto: Lockless group lookups.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 12:54 PM, Jarno Rajahalme <ja...@ovn.org> wrote: > >> >> On Jul 29, 2016, at 12:48 PM, Ben Pfaff <b...@ovn.org <mailto:b...@ovn.org>> >> wrote: >> >> On Fri, Jul 29, 2016 at 11:46:49AM -0700, Jarno Rajahalme wrote

Re: [ovs-dev] [PATCH v2 02/26] ofproto: Lockless group lookups.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 12:48 PM, Ben Pfaff <b...@ovn.org> wrote: > > On Fri, Jul 29, 2016 at 11:46:49AM -0700, Jarno Rajahalme wrote: >> >>> On Jul 29, 2016, at 11:20 AM, Ben Pfaff <b...@ovn.org> wrote: >>> >>> On Thu, Jul 28, 2016 at 05:

Re: [ovs-dev] [PATCH v2 02/26] ofproto: Lockless group lookups.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 11:20 AM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:55:54PM -0700, Jarno Rajahalme wrote: >> Make groups RCU protected and make group lookups lockless. >> >> Signed-off-by: Jarno Rajahalme <ja...@ovn.org> > &

Re: [ovs-dev] [PATCH v2 01/26] lib: Separate versioning to its own module.

2016-07-29 Thread Jarno Rajahalme
> On Jul 29, 2016, at 11:06 AM, Ben Pfaff <b...@ovn.org> wrote: > > On Thu, Jul 28, 2016 at 05:55:53PM -0700, Jarno Rajahalme wrote: >> Separate rule versioning to lib/versions.h to make it easier to use >> versioning for other data types. >> >> Signed

<    1   2   3   4   5   6   7   8   9   10   >