Re: [ovs-dev] [PATCH 1/3] ofproto-dpif-upcall: Avoid unnecessarily installing datapath flows.

2014-01-10 Thread Andy Zhou
All three patches look good to me. Guolin, please feel free to do additional review or testing. Acked-by: Andy Zhou On Fri, Jan 10, 2014 at 3:18 PM, Ben Pfaff wrote: > handle_upcalls() always installed a flow for every packet, as long as > the datapath didn't already have too many flows, but

[ovs-dev] [ovs flow free panic v2] datapath: Fix kernel panic on ovs_flow_free

2014-01-10 Thread Andy Zhou
Both mega flow mask's reference counter and per flow table mask list should only be accessed when holding ovs_mutex() lock. However this is not true with ovs_flow_table_flush(). The patch fixes this bug. Signed-off-by: Andy Zhou --- v1->v2: Atomic ops can protect mask's reference coun

Re: [ovs-dev] [mpls v2 1/2] Implement OpenFlow support for MPLS, for up to 3 labels.

2014-01-10 Thread Ben Pfaff
On Fri, Jan 10, 2014 at 03:50:09PM -0800, Jesse Gross wrote: > On Thu, Jan 9, 2014 at 9:17 AM, Ben Pfaff wrote: > > On Thu, Jan 02, 2014 at 11:51:15AM -0500, Jesse Gross wrote: > >> On Sun, Dec 29, 2013 at 2:50 AM, Ben Pfaff wrote: > >> * I'm not sure that flow_count_mpls_labels() is megaflow-saf

Re: [ovs-dev] [mpls v2 1/2] Implement OpenFlow support for MPLS, for up to 3 labels.

2014-01-10 Thread Jesse Gross
On Thu, Jan 9, 2014 at 9:17 AM, Ben Pfaff wrote: > On Thu, Jan 02, 2014 at 11:51:15AM -0500, Jesse Gross wrote: >> On Sun, Dec 29, 2013 at 2:50 AM, Ben Pfaff wrote: >> > I've been a little frustrated with the current approach to MPLS, because it >> > seems quite difficult to understand. One part

Re: [ovs-dev] [PATCH] ovsdbmonitor: Remove.

2014-01-10 Thread Ben Pfaff
On Fri, Jan 10, 2014 at 07:12:26PM -0200, Flavio Leitner wrote: > On Fri, Jan 10, 2014 at 12:30:06PM -0800, Ben Pfaff wrote: > > ovsdbmonitor was poorly maintained and not widely used. > > > > CC: Flavio Leitner > > Signed-off-by: Ben Pfaff > > --- > > I can build using openvswitch-fedora.spec

Re: [ovs-dev] [PATCH 1/3] ofproto-dpif-upcall: Avoid unnecessarily installing datapath flows.

2014-01-10 Thread Ben Pfaff
On Fri, Jan 10, 2014 at 03:18:24PM -0800, Ben Pfaff wrote: > handle_upcalls() always installed a flow for every packet, as long as > the datapath didn't already have too many flows, but there are cases where > we don't want to do this: > > - If we get multiple packets in a single microflow all

[ovs-dev] [PATCH 3/3] ofproto-dpif: Un-wildcard nw_frag only for protocols that have fragments.

2014-01-10 Thread Ben Pfaff
The revalidator code in ofproto-dpif-upcall.c(), in revalidate_ukey(), deletes any datapath flow for which the kernel reports wildcarded bits that userspace requires to be matched. Until now, a couple of pieces of code in ofproto-dpif always marked nw_frag (which tracks whether a packet is an IPv4

[ovs-dev] [PATCH 1/3] ofproto-dpif-upcall: Avoid unnecessarily installing datapath flows.

2014-01-10 Thread Ben Pfaff
handle_upcalls() always installed a flow for every packet, as long as the datapath didn't already have too many flows, but there are cases where we don't want to do this: - If we get multiple packets in a single microflow all in one batch (perhaps due to GSO breaking up a large TCP packe

[ovs-dev] [PATCH 2/3] tunnel: Un-wildcard only flags that really exist in tnl_xlate_init().

2014-01-10 Thread Ben Pfaff
The revalidator code in ofproto-dpif-upcall.c(), in revalidate_ukey(), deletes any datapath flow for which the kernel reports wildcarded bits that userspace requires to be matched. Until now, tnl_xlate_init() marked every bit in the tunnel flags as required to be matched. Since most of those bits

[ovs-dev] [PATCH] tests: Fix path for distcleaning ovs-controller.8

2014-01-10 Thread Joe Stringer
Fixes the following error on distcheck:- ERROR: files left in build directory after distclean: ./tests/test-controller.8 make[1]: *** [distcleancheck] Error 1 Signed-off-by: Joe Stringer --- tests/automake.mk |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/automake.

Re: [ovs-dev] [PATCH] datapath: Fix kernel panic on ovs_flow_free

2014-01-10 Thread Andy Zhou
On Fri, Jan 10, 2014 at 12:53 PM, Jesse Gross wrote: > On Thu, Jan 9, 2014 at 5:19 PM, Andy Zhou wrote: > > diff --git a/datapath/flow_table.c b/datapath/flow_table.c > > index 4232b82..4170a96 100644 > > --- a/datapath/flow_table.c > > +++ b/datapath/flow_table.c > > void ovs_flow_free(struct

Re: [ovs-dev] [PATCH] ovsdbmonitor: Remove.

2014-01-10 Thread Flavio Leitner
On Fri, Jan 10, 2014 at 12:30:06PM -0800, Ben Pfaff wrote: > ovsdbmonitor was poorly maintained and not widely used. > > CC: Flavio Leitner > Signed-off-by: Ben Pfaff > --- I can build using openvswitch-fedora.spec now. Thanks, Acked-by: Flavio Leitner __

Re: [ovs-dev] [PATCH] datapath: Fix kernel panic on ovs_flow_free

2014-01-10 Thread Jesse Gross
On Thu, Jan 9, 2014 at 5:19 PM, Andy Zhou wrote: > diff --git a/datapath/flow_table.c b/datapath/flow_table.c > index 4232b82..4170a96 100644 > --- a/datapath/flow_table.c > +++ b/datapath/flow_table.c > void ovs_flow_free(struct sw_flow *flow, bool deferred) > { > if (!flow) >

Re: [ovs-dev] [PATCH] rhel: create ovsdbmonitor subpackage

2014-01-10 Thread Ben Pfaff
On Wed, Jan 08, 2014 at 10:51:43AM -0800, Ben Pfaff wrote: > On Wed, Jan 08, 2014 at 09:53:51AM -0200, Flavio Leitner wrote: > > On Tue, Jan 07, 2014 at 06:17:59PM -0800, Ben Pfaff wrote: > > > On Tue, Jan 07, 2014 at 11:12:41PM -0200, Flavio Leitner wrote: > > > > The fedora's rpm policy doesn't a

[ovs-dev] [PATCH 09/10] dpif: Don't synchronize flow_dump_next() status.

2014-01-10 Thread Joe Stringer
In an earlier incarnation of dpif, the interface specified that if flow_dump_next() returned an error code, then the function must not be called again in the same dump operation. As such, the dpif itself needed to cache the error status to ensure that it did not make such calls. Recent changes have

[ovs-dev] [PATCH 03/10] netlink: Drain sockets with separate ofpbuf.

2014-01-10 Thread Joe Stringer
The 'buffer' member in 'struct nl_dump' will be going away, so this patch ensures that nl_dump_done() no longer uses it to drain the nl_sock. Signed-off-by: Joe Stringer --- lib/netlink-socket.c |7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/netlink-socket.c b/

[ovs-dev] [PATCH 07/10] dpif: Don't fetch actions in dpif_flow_dump_next().

2014-01-10 Thread Joe Stringer
Previously when dumping flows from the datapath, callers of dpif_flow_dump_next() could specify whether they wish to fetch the actions for a flow. Depending on the datapath implementation, these may be fetched at no performance cost or may require additional resources to fetch. The most frequent c

[ovs-dev] [PATCH 08/10] dpif: Make dpif_flow_dump_next() thread-safe.

2014-01-10 Thread Joe Stringer
This patch makes it the caller's responsibility to allocate and pass a buffer down to the dpif_flow_dump_next() implementation, to act as storage for the next flow. The implementation can expect to be called from multiple threads with the same 'state' and different 'buffer's. When flow_dump_next()

[ovs-dev] [PATCH 10/10] dpif: New function dpif_flow_dump_next_may_overwrite().

2014-01-10 Thread Joe Stringer
This new function allows callers to determine whether the contents of the given buffer will be modified or reallocated on the next call to dpif_flow_dump_next(). This will be used in a future commit to allow batched flow deletion by revalidator threads. Signed-off-by: Joe Stringer --- I was a lit

[ovs-dev] [PATCH 01/10] netlink: Update comment for nl_dump_start().

2014-01-10 Thread Joe Stringer
The function comment still referred to a 'msg' variable, which has been renamed. Signed-off-by: Joe Stringer --- lib/netlink-socket.c |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/netlink-socket.c b/lib/netlink-socket.c index 4bd6d36..bf8eb32 100644 --- a/lib/n

[ovs-dev] [PATCH 06/10] netlink: Make nl_dump_next() thread-safe.

2014-01-10 Thread Joe Stringer
This patch modifies 'struct nl_dump' and nl_dump_next() to allow multiple threads to share the same nl_dump. These changes are targeted around synchronizing buffer status between multiple callers, and allowing callers to fully process their existing buffers before determining whether to stop fetchi

[ovs-dev] [PATCH 05/10] netlink: Remove buffer from 'struct nl_dump'.

2014-01-10 Thread Joe Stringer
This patch makes all of the users of 'struct nl_dump' allocate their own buffers to pass down to nl_dump_next(). This paves the way for allowing multithreaded flow dumping. Signed-off-by: Joe Stringer --- lib/dpif-linux.c | 16 lib/netdev-linux.c | 42 +

[ovs-dev] [PATCH 04/10] dpif-linux: Consolidate buffer usage in flow_dump_next().

2014-01-10 Thread Joe Stringer
This patch simplifies buffer usage in dpif_linux_flow_dump_next() in preparation for later changes. Signed-off-by: Joe Stringer --- lib/dpif-linux.c | 16 ++-- 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/dpif-linux.c b/lib/dpif-linux.c index ed824a6..d985f4b

[ovs-dev] [PATCH 00/10] Flow Dump Threadsafety

2014-01-10 Thread Joe Stringer
Currently, we have a single thread (the 'flow_dumper') that fetches the flows from the datapath and distributes them to revalidator threads. To clean up the code (and provide a small performance benefit), we are looking at removing this flow_dumper thread, and have each revalidator fetch flows from

[ovs-dev] [PATCH 02/10] netlink: Explicitly pass buffers to nl_dump_next().

2014-01-10 Thread Joe Stringer
This should help to highlight the different users of nl_dump.buffer. A later patch will remove this field. Signed-off-by: Joe Stringer --- lib/dpif-linux.c | 14 -- lib/netdev-linux.c |6 +++--- lib/netlink-socket.c | 30 -- lib/netlink-socke

Re: [ovs-dev] [PATCH 2/2] ofproto: Add more thread safety annotations.

2014-01-10 Thread Ben Pfaff
Thanks. I applied this to master. I improved the commit message to: ofproto: Add more thread safety annotations. These would have found the problem fixed in commit c7be3f559349 (connmgr: Fix attempt to take mutex recursively when exiting fail-open.). Signed-off-by: Ben Pfaff

[ovs-dev] [PATCH branch-2.0] ofproto: Avoid segfault modifying flow with invalid meter.

2014-01-10 Thread Ben Pfaff
ofproto_check_ofpacts() checks for a valid meter ID but ofpacts_check() does not. Reported-by: John Hurley Signed-off-by: Ben Pfaff --- It looks like this bug is only present in OVS 2.0. I don't think later versions have the same problem, and earlier versions didn't have meters at all. diff --

Re: [ovs-dev] [PATCH v2] Update build requirements.

2014-01-10 Thread Ben Pfaff
Thanks, I applied this to master and branch-2.1. On Thu, Jan 09, 2014 at 01:38:04PM -0800, Alex Wang wrote: > Looks good to me, > > > On Tue, Dec 31, 2013 at 2:24 PM, Ben Pfaff wrote: > > > Libtool is now required as of commit 38b7a52b61 (openvswitch: Use libtool > > and allow building shared

Re: [ovs-dev] [PATCH] configure: Make autoconf fail if libtool is not installed.

2014-01-10 Thread Ben Pfaff
Thank you for the review. I applied this to master. On Thu, Jan 09, 2014 at 01:34:38PM -0800, Alex Wang wrote: > Looks good to me > Tested on machine without libtool, worked as expected, > > > On Tue, Dec 31, 2013 at 2:20 PM, Ben Pfaff wrote: > > > Otherwise users get an error later like: > >

[ovs-dev] НЕТ КАМЕР - 100% Защита от штрафов с камер ГИБДД.

2014-01-10 Thread НЕТ КАМЕР
NETKAMER.COM - Защита от штрафов с камер ГИБДД на дорогах. ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev