Re: [ovs-dev] [PATCHv3] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Alex Wang
Yes, I could reproduce it on my VM setup, It is the timing issue again, if the p1 starts sending ccm first, it will have flap count = 0. If p1 receives ccm from p0 first, it will go to [rdi] and then []. so it will have flap count = 2. I think the safest way is to drop the "CFM_VSCTL_LIST_IFACE

Re: [ovs-dev] [threaded-put v2 1/3] flow: New function flow_unwildcard_tp_ports().

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 08:24:54PM -0800, Ethan Jackson wrote: > This patch adds a new function flow_unildcard_tp_ports() which doesn't > unwildcard the upper half of tp_src and tp_dst with ICMP packets. > Unfortunately, this matters in future patches when we compare masks > carefully to determine

Re: [ovs-dev] [threaded-put v2 2/3] ovs-ofctl: Replace TODO with XXX.

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 08:24:55PM -0800, Ethan Jackson wrote: > In accordance with the style guidelines. > > Signed-off-by: Ethan Jackson Acked-by: Ben Pfaff ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [threaded-put v2 3/3] ofproto: Simplify thread creation API.

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 08:24:56PM -0800, Ethan Jackson wrote: > There's no particular reason for the function controlling the number > of threads to be bound up with dpif_recv_set(). This patch breaks > them up, but as a side effect means threads will run doing nothing > when datapath upcall rece

[ovs-dev] [threaded-put v2 2/3] ovs-ofctl: Replace TODO with XXX.

2013-12-12 Thread Ethan Jackson
In accordance with the style guidelines. Signed-off-by: Ethan Jackson --- utilities/ovs-ofctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utilities/ovs-ofctl.c b/utilities/ovs-ofctl.c index 5eb8cf4..c481210 100644 --- a/utilities/ovs-ofctl.c +++ b/utilities/ovs-ofctl.c

[ovs-dev] [threaded-put v2 1/3] flow: New function flow_unwildcard_tp_ports().

2013-12-12 Thread Ethan Jackson
This patch adds a new function flow_unildcard_tp_ports() which doesn't unwildcard the upper half of tp_src and tp_dst with ICMP packets. Unfortunately, this matters in future patches when we compare masks carefully to determine if flows should be evicted from the datapath. Signed-off-by: Ethan Jac

[ovs-dev] [threaded-put v2 3/3] ofproto: Simplify thread creation API.

2013-12-12 Thread Ethan Jackson
There's no particular reason for the function controlling the number of threads to be bound up with dpif_recv_set(). This patch breaks them up, but as a side effect means threads will run doing nothing when datapath upcall receiving is disabled. By doing this, the udpif thread creation API become

Re: [ovs-dev] [PATCHv3] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Ethan Jackson
This patch occasionally fails the cfm flap count test for me. Can either of you reproduce it? Ethan On Thu, Dec 12, 2013 at 5:52 PM, Joe Stringer wrote: > Currently, every time a monitoring port is added or reconfigured, the > main thread notifies the monitoring thread to wake up immediately us

Re: [ovs-dev] Help unsubscribe

2013-12-12 Thread Ethan Jackson
;>>> + >>>> # since p0 has been in decay, now the RX will show 3000ms. >>>> BFD_CHECK_TX([p0], [500ms], [300ms], [500ms]) >>>> BFD_CHECK_RX([p0], [3000ms], [3000ms], [500ms]) >>>> @@ -629,8 +629,6 @@ done >>>> >>>> # rec

Re: [ovs-dev] [threaded-put 21/21] unixctl: Make dpif/dump-flows fetch kernel flows

2013-12-12 Thread Ethan Jackson
> Might be nice to mention why. Good point, I added a sentence explaining that facets and subfacets are going away. Ethan > > Acked-by: Ben Pfaff ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [threaded-put 19/21] ofproto-dpif: Remove avg_n_subfacet.

2013-12-12 Thread Ethan Jackson
> This patch does not remove avg_n_subfacet. It removes > avg_subfacet_life. oops > > The change to ofproto/ofproto-dpif-upcall.c seems unrelated and I think > it could be dropped or folded into the previous patch. Rebasing error. Thanks > > Acked-by: Ben Pfaff __

Re: [ovs-dev] [threaded-put 17/21] ofproto-dpif-upcall: Add memory usage stats.

2013-12-12 Thread Ethan Jackson
> Perhaps ofproto_type_get_memory_usage() should verify that the class it > gets is nonnull before it tries to use it? Agreed, changed thanks. Ethan > > Acked-by: Ben Pfaff > ___ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailma

Re: [ovs-dev] [threaded-put 16/21] ofproto: Remove run_fast() functions.

2013-12-12 Thread Ethan Jackson
Good catch thanks. I ditched the first of the two. Ethan On Thu, Dec 12, 2013 at 4:23 PM, Ben Pfaff wrote: > On Sun, Dec 08, 2013 at 06:45:22PM -0800, Ethan Jackson wrote: >> They don't really make sense in a multithreaded architecture. Once >> flow miss batches are dispatched with, they will

Re: [ovs-dev] [threaded-put 14/21] ofproto-dpif-xlate: Add a mechanism to skip wildcard calculation.

2013-12-12 Thread Ben Pfaff
OK, thanks for the background. On Dec 12, 2013 6:57 PM, "Ethan Jackson" wrote: > > I wonder how much time it really saves? > > Jarno said offline that disabling the decision tree stuff he wrote > increases flow setup performance by roughly 5%. In the new multi > threaded revalidation setup, shav

Re: [ovs-dev] [threaded-put 14/21] ofproto-dpif-xlate: Add a mechanism to skip wildcard calculation.

2013-12-12 Thread Ethan Jackson
> I wonder how much time it really saves? Jarno said offline that disabling the decision tree stuff he wrote increases flow setup performance by roughly 5%. In the new multi threaded revalidation setup, shaving a bit off the cost of xlate_actions() will directly lead to larger datapath flow table

Re: [ovs-dev] [PATCH v2 2/2] netdev-linux: Read packet auxdata to obtain vlan_tid

2013-12-12 Thread Simon Horman
On Thu, Dec 12, 2013 at 06:12:32PM -0800, Ben Pfaff wrote: > On Fri, Dec 13, 2013 at 09:44:06AM +0900, Simon Horman wrote: > > On Thu, Dec 12, 2013 at 09:56:18AM -0800, Ben Pfaff wrote: > > > On Thu, Dec 12, 2013 at 05:38:59PM +0900, Simon Horman wrote: > > > > If VLAN acceleration is used when the

Re: [ovs-dev] [PATCH v2 1/2] netdev_class: Pass a struct ofpbuf * to rx_recv()

2013-12-12 Thread Simon Horman
On Thu, Dec 12, 2013 at 06:01:26PM -0800, Ben Pfaff wrote: > On Fri, Dec 13, 2013 at 09:45:43AM +0900, Simon Horman wrote: > > On Thu, Dec 12, 2013 at 08:11:47AM -0800, Jarno Rajahalme wrote: > > > IMO this patch could go a bit further and have the rx_recv also > > > update the but size to reflect

Re: [ovs-dev] [PATCH v2.52 1/6] ovs-ofctl: Update push_mpls documentation

2013-12-12 Thread Ben Pfaff
On Wed, Dec 11, 2013 at 10:23:36AM +0900, Simon Horman wrote: > * The ethertype of the packet is always set to > the ethertype of the push_mpls action > * Drop references to unicast and multicast MPLS ethertypes, > in RFC5332 0x8847 and 0x8848 do not always have > those meanings. > > Signed-

Re: [ovs-dev] [PATCH v2 2/2] netdev-linux: Read packet auxdata to obtain vlan_tid

2013-12-12 Thread Ben Pfaff
On Fri, Dec 13, 2013 at 09:44:06AM +0900, Simon Horman wrote: > On Thu, Dec 12, 2013 at 09:56:18AM -0800, Ben Pfaff wrote: > > On Thu, Dec 12, 2013 at 05:38:59PM +0900, Simon Horman wrote: > > > If VLAN acceleration is used when the kernel receives a packet > > > then the outer-most VLAN tag will n

Re: [ovs-dev] [PATCH v2 1/2] netdev_class: Pass a struct ofpbuf * to rx_recv()

2013-12-12 Thread Ben Pfaff
On Fri, Dec 13, 2013 at 09:45:43AM +0900, Simon Horman wrote: > On Thu, Dec 12, 2013 at 08:11:47AM -0800, Jarno Rajahalme wrote: > > IMO this patch could go a bit further and have the rx_recv also > > update the but size to reflect the number of bytes placed in the > > buffer and maybe change the r

Re: [ovs-dev] [threaded-put 07/21] netflow: Make thread safe.

2013-12-12 Thread Ben Pfaff
Yeah, if you want clang to catch that then you would need to add a redundant prototype near the top of the C file (not actually a bad idea). On Dec 12, 2013 5:12 PM, "Ethan Jackson" wrote: > Annoying that clang didn't catch that . . . I suppose it's cause > 'mutex' doesn't exist where we define

Re: [ovs-dev] [threaded-put 07/21] netflow: Make thread safe.

2013-12-12 Thread Ethan Jackson
Annoying that clang didn't catch that . . . I suppose it's cause 'mutex' doesn't exist where we define netflow_run()'s protoype and we have to annotate in both places. At any rate. I'll make a netflow_run__() function which doesn't require the mutex. On Thu, Dec 12, 2013 at 2:56 PM, Ben Pfaff

Re: [ovs-dev] [threaded-put 06/21] ofproto: Modularize netflow.

2013-12-12 Thread Ethan Jackson
> I think that the flow parameter to netflow_expire(), > netflow_flow_clear(), and netflow_flow_update() could be const. Actually none of them can because they either much with the flows hmap or the packet. I could const cast them, but it doesn't seem worth it. > Acked-by: Ben Pfaff I've folde

Re: [ovs-dev] [threaded-put 05/21] ofproto: Simplify thread creation API.

2013-12-12 Thread Ben Pfaff
I really just want an update to the commit message. On Dec 12, 2013 4:51 PM, "Ethan Jackson" wrote: > > It seems harmless but the reason for it isn't really obvious. Maybe > > this is to support some later change in the series? If so then it would > > be nice to hint at that in the commit messa

[ovs-dev] [PATCHv3] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Joe Stringer
Currently, every time a monitoring port is added or reconfigured, the main thread notifies the monitoring thread to wake up immediately using monitor_seq. When adding a large number of ports at once, this causes contention as the threads fight over access to the monitor heap---one thread adding new

Re: [ovs-dev] [threaded-put 05/21] ofproto: Simplify thread creation API.

2013-12-12 Thread Ethan Jackson
> It seems harmless but the reason for it isn't really obvious. Maybe > this is to support some later change in the series? If so then it would > be nice to hint at that in the commit message. The main reason is that the API became a bit unwieldy once there were two types of thread to deal with.

Re: [ovs-dev] [PATCHv2] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Joe Stringer
Sure. On 12 December 2013 16:44, Ethan Jackson wrote: > Joe, could you rebase it and resend it please? > > Ethan > > On Thu, Dec 12, 2013 at 5:17 PM, Alex Wang wrote: >> Hey Ben, Ethan, >> >> Could any of you apply this patch? >> >> Thanks, >> Alex Wang, >> >> >> On Thu, Dec 12, 2013 at 4:15 PM,

Re: [ovs-dev] [PATCH v2 1/2] netdev_class: Pass a struct ofpbuf * to rx_recv()

2013-12-12 Thread Simon Horman
On Thu, Dec 12, 2013 at 08:11:47AM -0800, Jarno Rajahalme wrote: > IMO this patch could go a bit further and have the rx_recv also update the > but size to reflect the number of bytes placed in the buffer and maybe change > the return value to a normal error code. Hi, I would not be opposed to

Re: [ovs-dev] [PATCHv2] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Ethan Jackson
Joe, could you rebase it and resend it please? Ethan On Thu, Dec 12, 2013 at 5:17 PM, Alex Wang wrote: > Hey Ben, Ethan, > > Could any of you apply this patch? > > Thanks, > Alex Wang, > > > On Thu, Dec 12, 2013 at 4:15 PM, Alex Wang wrote: >> >> This patch looks good to me, thx for doing this.

Re: [ovs-dev] [PATCH v2 1/2] netdev_class: Pass a struct ofpbuf * to rx_recv()

2013-12-12 Thread Simon Horman
On Thu, Dec 12, 2013 at 09:29:12AM -0800, Ben Pfaff wrote: > On Thu, Dec 12, 2013 at 05:38:58PM +0900, Simon Horman wrote: > > Update the netdev_class so that struct ofpbuf * is passed to rx_recv() > > to provide both the data and size of the data to read a packet into. > > > > This patch should n

[ovs-dev] Help unsubscribe

2013-12-12 Thread Nackeeran
, [300ms], [500ms]) >>> >>> # wait for 5000ms to decay. >>> for i in `seq 0 9`; do ovs-appctl time/warp 500; done >>> diff --git a/tests/cfm.at b/tests/cfm.at >>> index 9e351d0..620e3e0 100644 >>> --- a/tests/cfm.at >>> +++ b/tests/cfm.a

Re: [ovs-dev] [PATCH v2 2/2] netdev-linux: Read packet auxdata to obtain vlan_tid

2013-12-12 Thread Simon Horman
On Thu, Dec 12, 2013 at 09:56:18AM -0800, Ben Pfaff wrote: > On Thu, Dec 12, 2013 at 05:38:59PM +0900, Simon Horman wrote: > > If VLAN acceleration is used when the kernel receives a packet > > then the outer-most VLAN tag will not be present in the packet > > when it is received by netdev-linux. R

Re: [ovs-dev] [Windows thread 3]

2013-12-12 Thread Saurabh Shah
Looks good to me. Just one minor comment. You probably also want to include the following? #include #pragma comment(lib, "advapi32.lib") Btw, printing the error message will require a small change which maps strerror_r to strerror_s. Not sure, if we should just add it to this commit. Saurabh

[ovs-dev] [PATCH] pool-loop: windows poll_block implementation

2013-12-12 Thread Linda Sun
Use WaitForMultipleObjects for polling on windows. This works on all kinds of objects, e.g. sockets, files, especially ioctl calls to the kernel. One additional paramater is passed down in poll_fd_wait() to help WaitForMultipleObjects. latch is signaled with event, to be waited/polled by WaitFo

Re: [ovs-dev] [PATCHv2] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Alex Wang
Hey Ben, Ethan, Could any of you apply this patch? Thanks, Alex Wang, On Thu, Dec 12, 2013 at 4:15 PM, Alex Wang wrote: > This patch looks good to me, thx for doing this. > > > On Thu, Dec 12, 2013 at 1:03 PM, Joe Stringer wrote: > >> Currently, every time a monitoring port is added or reconf

Re: [ovs-dev] [PATCHv2] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Alex Wang
This patch looks good to me, thx for doing this. On Thu, Dec 12, 2013 at 1:03 PM, Joe Stringer wrote: > Currently, every time a monitoring port is added or reconfigured, the > main thread notifies the monitoring thread to wake up immediately using > monitor_seq. When adding a large number of por

Re: [ovs-dev] [PATCHv4 4/4] bridge: Only store instant_stats on device changes

2013-12-12 Thread Joe Stringer
On 11 December 2013 18:11, Ethan Jackson wrote: > The first line of the commit message needs a period. Woops, missed this. I'll try to remember in future. ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [threaded-put 21/21] unixctl: Make dpif/dump-flows fetch kernel flows

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:27PM -0800, Ethan Jackson wrote: > From: Joe Stringer > > Previously we used facets for ovs-appctl dpif/dump-flows commands. This > switches to fetching flows directly from the dpif. > > Signed-off-by: Joe Stringer > Signed-off-by: Ethan Jackson > Acked-by: Ethan

Re: [ovs-dev] [threaded-put 20/21] ofproto-dpif: Remove ovs-appctl dpif/del-flows.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:26PM -0800, Ethan Jackson wrote: > It's not entirely clear why someone would want to delete the flows > associated with only one bridge and not be fine with simply using > ovs-dpctl del-flows to get all of them. Additionally, this will be > hard to implement cleanly i

[ovs-dev] [PATCH] ovs-dev.py: Pass leak-check=full to valgrind.

2013-12-12 Thread Ethan Jackson
This valgrind leak checker isn't really useful without this. Signed-off-by: Ethan Jackson --- utilities/ovs-dev.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utilities/ovs-dev.py b/utilities/ovs-dev.py index c5445e2..7b69094 100755 --- a/utilities/ovs-dev.py +++ b/utilit

Re: [ovs-dev] [threaded-put 19/21] ofproto-dpif: Remove avg_n_subfacet.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:25PM -0800, Ethan Jackson wrote: > This is going to be hard to compute efficiently in the new > architecture introduced in future patches. > > Signed-off-by: Ethan Jackson This patch does not remove avg_n_subfacet. It removes avg_subfacet_life. The change to ofpro

Re: [ovs-dev] [threaded-put 18/21] ofproto-dpif-upcall: New ovs-appctl upcall/show.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:24PM -0800, Ethan Jackson wrote: > Shows debugging information related to upcall handling. > > Signed-off-by: Ethan Jackson Acked-by: Ben Pfaff ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listi

Re: [ovs-dev] [threaded-put 17/21] ofproto-dpif-upcall: Add memory usage stats.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:23PM -0800, Ethan Jackson wrote: > Signed-off-by: Ethan Jackson Perhaps ofproto_type_get_memory_usage() should verify that the class it gets is nonnull before it tries to use it? Acked-by: Ben Pfaff ___ dev mailing list d

Re: [ovs-dev] [threaded-put 16/21] ofproto: Remove run_fast() functions.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:22PM -0800, Ethan Jackson wrote: > They don't really make sense in a multithreaded architecture. Once > flow miss batches are dispatched with, they will be extra useless. > > Signed-off-by: Ethan Jackson I had to resolve a few conflicts due to changes on master. I

Re: [ovs-dev] [threaded-put 15/21] ofproto: Replace reval_seq with a struct seq.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:21PM -0800, Ethan Jackson wrote: > Future patches will need to poll_block() on it. > > Signed-off-by: Ethan Jackson Acked-by: Ben Pfaff ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCHv5 4/4] bridge: Only store instant_stats on device changes

2013-12-12 Thread Ethan Jackson
Thanks Joe, I've merged the series. Ethan On Thu, Dec 12, 2013 at 11:33 AM, Joe Stringer wrote: > Previously, we iterated through all interfaces in instant_stats_run(), > grabbing up-to-date information about device and port status. After > assembling all of this information for all interfaces,

Re: [ovs-dev] [threaded-put 14/21] ofproto-dpif-xlate: Add a mechanism to skip wildcard calculation.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:20PM -0800, Ethan Jackson wrote: > As time goes on and the classifier becomes more complicated, calculate > the wildcard mask will get more and more expensive. This patch adds a > mechanism to xlate_actions() allowing callers to disable wildcard > calculation when it

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Joe Stringer
Looks good. On 12 December 2013 14:40, Ethan Jackson wrote: > Here's an incremental. I folded in some tweaks which make it slightly easier > to > build without clang or sparse. > > Still good? > Ethan > > --- > .gitignore | 6 ++ > utilities/ovs-dev.py | 19 +++ >

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Ben Pfaff
Whatever you like, I don't feel like I have a stake in this, I was just explaining my own reasons. On Dec 12, 2013 2:10 PM, "Ethan Jackson" wrote: > so what do you think ben/joe? _build-clang? _build_clang? > build-clang? I don't care ... > > Ethan > > On Thu, Dec 12, 2013 at 2:08 PM, Ben Pfaf

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Ethan Jackson
Here's an incremental. I folded in some tweaks which make it slightly easier to build without clang or sparse. Still good? Ethan --- .gitignore | 6 ++ utilities/ovs-dev.py | 19 +++ 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.git

Re: [ovs-dev] [threaded-put 13/21] ofproto: Move all statistics accounting into xlate_actions().

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:19PM -0800, Ethan Jackson wrote: > This patch moves statistics accounting for netflow, bonding, netdev, > and mirroring inside xlate_actions(). Moving all statistics into one > place makes it very difficult to mess up. > > Signed-off-by: Ethan Jackson Acked-by: Ben

Re: [ovs-dev] [Windows thread 2]

2013-12-12 Thread Alin Serdean
I applied your patch (http://openvswitch.org/pipermail/dev/2013-November/034001.html) and added the includes things started to compile :). But again it is up too you how the file structure will be in end. Kind Regards, Alin. From: Gurucharan Shetty [shet

Re: [ovs-dev] [threaded-put 11/21] flow: Don't unwildcard missing ICMP bits.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:17PM -0800, Ethan Jackson wrote: > This patch changes flow_mask_hash_fields() so it doesn't unwildcard > the upper half of tp_src and tp_dst with ICMP packets. Unfortunately, > this matters in future patches when we compare masks carefully to > determine if flows shou

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Joe Stringer
I see. I like the prefix idea. Didn't mean to bikeshed, I say just pick something and go with it ;-) On 12 December 2013 14:08, Ben Pfaff wrote: > On Thu, Dec 12, 2013 at 01:24:53PM -0800, Joe Stringer wrote: >> On 8 December 2013 18:45, Ethan Jackson wrote: >> > +/build_gcc >> > +/build_clang

Re: [ovs-dev] [threaded-put 12/21] ofproto: Retrieve ipfix, sflow and netflow in xlate_receive().

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:18PM -0800, Ethan Jackson wrote: > This seems cleaner than having separate accessors for them. > > Signed-off-by: Ethan Jackson Acked-by: Ben Pfaff ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/l

Re: [ovs-dev] [threaded-put 10/21] netflow: Don't unwildcard missing ICMP bits.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:16PM -0800, Ethan Jackson wrote: > This patch changes netflow_mask_wc() so it doesn't unwildcard the > upper half of tp_src and tp_dst with ICMP packets. Unfortunately, > this matters in future patches when we compare masks carefully to > determine if flows should be

Re: [ovs-dev] [threaded-put 09/21] ofproto: Handle netflow similarly to ipfix and sflow in xlate.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:15PM -0800, Ethan Jackson wrote: > This patch changes how ofproto-dpif-xlate handles netflow so that it's > more similar to how ipfix and sflow are handled. This not only > simplifies the code, but it will allow xlate to call netflow in future > if necessary. > > Sig

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Ethan Jackson
so what do you think ben/joe? _build-clang? _build_clang? build-clang? I don't care ... Ethan On Thu, Dec 12, 2013 at 2:08 PM, Ben Pfaff wrote: > On Thu, Dec 12, 2013 at 01:24:53PM -0800, Joe Stringer wrote: >> On 8 December 2013 18:45, Ethan Jackson wrote: >> > +/build_gcc >> > +/build_clan

Re: [ovs-dev] [threaded-put 04/21] ofproto: Remove arbitrary handler thread limit.

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 01:39:04PM -0800, Ethan Jackson wrote: > > Hmm. Using too many could easily cause a crash, but at least it would > > recover after restarting when the number was lowered again. > > Interesting, why would we crash? Memory consumption? At any rate, > this is the kind of th

Re: [ovs-dev] [threaded-put 02/21] ovs: Replace TODO with XXX.

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 01:36:08PM -0800, Ethan Jackson wrote: > > I'd rather not modify > > xenserver/opt_xensource_libexec_InterfaceReconfigure.py since it's > > maintained in conjunction with Citrix. > > Meh, I don't like that we have code in the tree that we can't change. Not "can't change" b

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 01:24:53PM -0800, Joe Stringer wrote: > On 8 December 2013 18:45, Ethan Jackson wrote: > > +/build_gcc > > +/build_clang > > +/_build > > +/build > > Most directories in ovs seem to use - instead of _ in the names (ie, > 'build-clang' rather than 'build_clang'). I tend to

Re: [ovs-dev] [threaded-put 08/21] ofproto: New function netflow_exists().

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:14PM -0800, Ethan Jackson wrote: > Useful in future patches. > > Signed-off-by: Ethan Jackson Acked-by: Ben Pfaff ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [Windows thread 3]

2013-12-12 Thread Alin Serdean
Updated. Thanks for the feedback :-). Final version would look something like: lib/entropy.c | 13 + 1 files changed, 13 insertions(+), 0 deletions(-) --- diff --git a/lib/entropy.c b/lib/entropy.c index 02f56e0..45e83ec 100644 --- a/lib/entropy.c +++ b/lib/entropy.c @@ -33,6 +33,

Re: [ovs-dev] [threaded-put 07/21] netflow: Make thread safe.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:13PM -0800, Ethan Jackson wrote: > In future patches upcall handler threads will need to update netflow. > > Signed-off-by: Ethan Jackson I think I see a deadlock. gen_netflow_rec() requires 'mutex', netflow_run() excludes it, but the former calls the latter. Mayb

Re: [ovs-dev] [threaded-put 06/21] ofproto: Modularize netflow.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:12PM -0800, Ethan Jackson wrote: > The netflow code has its tentacles all over the ofproto-dpif module. > This is fine today, but in future facets, which correspond roughly to > netflow_flows, will be retired. In preparation, this patch hides as > much implementation

Re: [ovs-dev] [threaded-put 04/21] ofproto: Remove arbitrary handler thread limit.

2013-12-12 Thread Ethan Jackson
> Hmm. Using too many could easily cause a crash, but at least it would > recover after restarting when the number was lowered again. Interesting, why would we crash? Memory consumption? At any rate, this is the kind of thing where you have to go out of your way to get it wrong, so I'm fine wit

Re: [ovs-dev] [threaded-put 02/21] ovs: Replace TODO with XXX.

2013-12-12 Thread Ethan Jackson
> I'd rather not modify > xenserver/opt_xensource_libexec_InterfaceReconfigure.py since it's > maintained in conjunction with Citrix. Meh, I don't like that we have code in the tree that we can't change. But this doesn't really matter *at all*, so I'll just change ofctl. Ethan ___

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Joe Stringer
On 8 December 2013 18:45, Ethan Jackson wrote: > +/build_gcc > +/build_clang > +/_build > +/build Most directories in ovs seem to use - instead of _ in the names (ie, 'build-clang' rather than 'build_clang'). I didn't have any 'build' or '_build' directory after running this script. Otherwise,

Re: [ovs-dev] [threaded-put 05/21] ofproto: Simplify thread creation API.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:11PM -0800, Ethan Jackson wrote: > There's no particular reason for the function controlling the number > of threads to be bound up with dpif_recv_set(). This patch breaks > them up, but as a side effect means threads will run doing nothing > when datapath upcall rece

Re: [ovs-dev] [PATCH net-next v2 0/2] ovs: introduce arch-specific fast hashing improvements

2013-12-12 Thread David Miller
From: Francesco Fusco Date: Thu, 12 Dec 2013 16:09:04 +0100 > We are introducing a fast hash function (see patch1) that can be > used in the context of OpenVSwitch to reduce the hashing footprint > (patch2). For details, please see individual patches! No objections from my side, I'll let the x86

[ovs-dev] [PATCHv2] monitor: Replace monitor_seq with periodic wakeup

2013-12-12 Thread Joe Stringer
Currently, every time a monitoring port is added or reconfigured, the main thread notifies the monitoring thread to wake up immediately using monitor_seq. When adding a large number of ports at once, this causes contention as the threads fight over access to the monitor heap---one thread adding new

Re: [ovs-dev] [threaded-put 14/21] ofproto-dpif-xlate: Add a mechanism to skip wildcard calculation.

2013-12-12 Thread Alex Wang
Just confirm, with the initialization, the intermittent test failures (relate to ofproto-dpif megaflow tests) are gone. On Wed, Dec 11, 2013 at 6:27 PM, Ethan Jackson wrote: > Btw to whoever reviews this, this version of the patch fails to > initialize skip_wildcards in xlate_in_init(). > > Eth

Re: [ovs-dev] [threaded-put 04/21] ofproto: Remove arbitrary handler thread limit.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:10PM -0800, Ethan Jackson wrote: > There's no particular reason to limit the number of handler threads to > 64. If someone wants to try more, let them. > > Signed-off-by: Ethan Jackson Hmm. Using too many could easily cause a crash, but at least it would recover a

Re: [ovs-dev] [threaded-put 03/21] ofproto-dpif: Remove dead code.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:09PM -0800, Ethan Jackson wrote: > Signed-off-by: Ethan Jackson Acked-by: Ben Pfaff ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [threaded-put 02/21] ovs: Replace TODO with XXX.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:08PM -0800, Ethan Jackson wrote: > In accordance with the style guidelines. > > Signed-off-by: Ethan Jackson I'd rather not modify xenserver/opt_xensource_libexec_InterfaceReconfigure.py since it's maintained in conjunction with Citrix. The ovs-ofctl change seems f

Re: [ovs-dev] [threaded-put 01/21] ovs-dev.py: Build with both GCC and Clang.

2013-12-12 Thread Ben Pfaff
On Sun, Dec 08, 2013 at 06:45:07PM -0800, Ethan Jackson wrote: > Many deployments prefer to use gcc in production and it supports > sparse, while clang supports thread safety analysis and has > more/better warnings and error messages. This patch changes > ovs-dev.py to build with both so that deve

Re: [ovs-dev] [PATCH 2/2] string: Use workaround for #include_next when it is not available.

2013-12-12 Thread Alin Serdean
I applied the patches and everything seems in order. The same remark about adding string.h to lib/.gitignore Thanks, Alin. From: dev-boun...@openvswitch.org [dev-boun...@openvswitch.org] on behalf of Gurucharan Shetty [shet...@nicira.com] Sent: Thursday,

Re: [ovs-dev] [PATCH net-next v2 2/2] net: ovs: use CRC32 accelerated flow hash if available

2013-12-12 Thread Jesse Gross
On Thu, Dec 12, 2013 at 7:09 AM, Francesco Fusco wrote: > Currently OVS uses jhash2() for calculating flow hashes in its > internal flow_hash() function. The performance of the flow_hash() > function is critical, as the input data can be hundreds of bytes > long. > > OVS is largely deployed in x86

[ovs-dev] [PATCHv5 1/4] netdev: Globally track port status changes

2013-12-12 Thread Joe Stringer
Previously, we tracked status changes for ofports on a per-device basis. Each time in the main thread's loop, we would inspect every ofport to determine whether the status had changed for corresponding devices. This patch replaces the per-netdev change_seq with a global 'struct seq' which tracks s

[ovs-dev] [PATCHv5 4/4] bridge: Only store instant_stats on device changes

2013-12-12 Thread Joe Stringer
Previously, we iterated through all interfaces in instant_stats_run(), grabbing up-to-date information about device and port status. After assembling all of this information for all interfaces, we would determine whether anything changed and only send an update to ovsdb-server if something changed.

[ovs-dev] [PATCHv5 0/4] Tunnel Scalability

2013-12-12 Thread Joe Stringer
Currently, configuring a large number of ports in ovs-vswitchd causes the main thread to use an unreasonably high amount of CPU. This is largely due to cases in the main loop where all ports are iterated through, even when this is unnecessary. This patchset shifts the netdev change_seq out from pe

[ovs-dev] [PATCHv5 2/4] ofproto-dpif: Don't poll ports when nothing changes

2013-12-12 Thread Joe Stringer
Previously, as part of ofproto-dpif run() processing, we would loop through all ports and poll for changes to carrier, bfd, cfm and lacp status. This information is used to determine whether bundles may be enabled, and to perform revalidation when needed. This patch makes the bfd, cfm, lacp and st

[ovs-dev] [PATCHv5 3/4] ofproto-dpif: Only run bundles when lacp or bonds are enabled

2013-12-12 Thread Joe Stringer
When dealing with a large number of ports, bundle_run() and bundle_wait() add significant unnecessary processing to the main run loop, even when there are no bonds and lacp is not configured. This patch skips such execution if it is unneeded, reducing average CPU usage of the main thread from about

Re: [ovs-dev] [PATCH 1/2] configure: Add macros to check for #include_next and add a workaround.

2013-12-12 Thread Gurucharan Shetty
Between, what is the difference between NOTICE and COPYING? On Thu, Dec 12, 2013 at 11:27 AM, Gurucharan Shetty wrote: > On Wed, Dec 11, 2013 at 3:04 PM, Ben Pfaff wrote: >> This will be used for the #include_next in string.h in the following >> commit. >> >> Signed-off-by: Ben Pfaff >> --- >>

Re: [ovs-dev] [PATCH 2/2] string: Use workaround for #include_next when it is not available.

2013-12-12 Thread Gurucharan Shetty
On Wed, Dec 11, 2013 at 3:04 PM, Ben Pfaff wrote: > Signed-off-by: Ben Pfaff > --- > configure.ac |3 +++ > lib/automake.mk |2 +- > lib/{string.h => string.h.in} |4 ++-- > 3 files changed, 6 insertions(+), 3 deletions(-) > rename lib/{string.h => str

Re: [ovs-dev] [PATCH 1/2] configure: Add macros to check for #include_next and add a workaround.

2013-12-12 Thread Gurucharan Shetty
On Wed, Dec 11, 2013 at 3:04 PM, Ben Pfaff wrote: > This will be used for the #include_next in string.h in the following > commit. > > Signed-off-by: Ben Pfaff > --- > NOTICE|5 +- > build-aux/.gitignore |2 + > debian/copyright.in | 10 ++- > m4/absolute-header.m4 |

Re: [ovs-dev] [PATCH net-next v2 1/2] lib: introduce arch optimized hash library

2013-12-12 Thread Daniel Borkmann
On 12/12/2013 06:54 PM, Nicolas Dichtel wrote: ... Is it possible to trace that this comes from the DPDK? At least in the commit log, like it was done in the v1. Hm, that got lost; but we can put that back into the commit log. In any case, we properly included the header comment, of course. +

Re: [ovs-dev] [PATCH v2 2/2] netdev-linux: Read packet auxdata to obtain vlan_tid

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 05:38:59PM +0900, Simon Horman wrote: > If VLAN acceleration is used when the kernel receives a packet > then the outer-most VLAN tag will not be present in the packet > when it is received by netdev-linux. Rather, it will be present > in auxdata. > > This patch uses recvms

[ovs-dev] Coaching

2013-12-12 Thread Departamento de RRHH
Title: EXPERTO EN COACHING EJECUTIVO EXPERTO EN COACHING EJECUTIVO Pulse AQUÍ si no visualiza correctamente las imágenes.

Re: [ovs-dev] [PATCH net-next v2 1/2] lib: introduce arch optimized hash library

2013-12-12 Thread Nicolas Dichtel
Le 12/12/2013 16:09, Francesco Fusco a écrit : We introduce a new hashing library that is meant to be used in the contexts where speed is more important than uniformity of the hashed values. The hash library leverages architecture specific implementation to achieve high performance and fall backs

Re: [ovs-dev] [PATCH v2 1/2] netdev_class: Pass a struct ofpbuf * to rx_recv()

2013-12-12 Thread Ben Pfaff
On Thu, Dec 12, 2013 at 05:38:58PM +0900, Simon Horman wrote: > Update the netdev_class so that struct ofpbuf * is passed to rx_recv() > to provide both the data and size of the data to read a packet into. > > This patch should not have any behavioural changes. > > This patch is in preparation fo

Re: [ovs-dev] [PATCH] lib/util: More portable use of builtin popcnt.

2013-12-12 Thread Jarno Rajahalme
Thanks, pushed! Jarno On Dec 11, 2013, at 9:25 PM, Simon Horman wrote: > On Wed, Dec 11, 2013 at 03:41:19PM -0800, Jarno Rajahalme wrote: >> - Use the GCC predefined macro __POPCNT__ to detect the availability >> of fast __builtin_popcnt function. >> - Use portable preprocessor macros

Re: [ovs-dev] [PATCH v2 1/2] netdev_class: Pass a struct ofpbuf * to rx_recv()

2013-12-12 Thread Jarno Rajahalme
IMO this patch could go a bit further and have the rx_recv also update the but size to reflect the number of bytes placed in the buffer and maybe change the return value to a normal error code. Jarno On Dec 12, 2013, at 12:38 AM, Simon Horman wrote: > Update the netdev_class so that struct

[ovs-dev] [PATCH net-next v2 1/2] lib: introduce arch optimized hash library

2013-12-12 Thread Francesco Fusco
We introduce a new hashing library that is meant to be used in the contexts where speed is more important than uniformity of the hashed values. The hash library leverages architecture specific implementation to achieve high performance and fall backs to jhash() for the generic case. On Intel-based

[ovs-dev] [PATCH net-next v2 0/2] ovs: introduce arch-specific fast hashing improvements

2013-12-12 Thread Francesco Fusco
From: Daniel Borkmann We are introducing a fast hash function (see patch1) that can be used in the context of OpenVSwitch to reduce the hashing footprint (patch2). For details, please see individual patches! Thanks ! v1->v2: - Make hash generic and place it under lib Francesco Fusco (2): li

[ovs-dev] [PATCH net-next v2 2/2] net: ovs: use CRC32 accelerated flow hash if available

2013-12-12 Thread Francesco Fusco
Currently OVS uses jhash2() for calculating flow hashes in its internal flow_hash() function. The performance of the flow_hash() function is critical, as the input data can be hundreds of bytes long. OVS is largely deployed in x86_64 based datacenters. Therefore, we argue that the performance cri

[ovs-dev] [PATCH net-next v2 0/2] ovs: introduce arch-specific fast hashing improvements

2013-12-12 Thread Francesco Fusco
From: Daniel Borkmann We are introducing a fast hash function (see patch1) that can be used in the context of OpenVSwitch to reduce the hashing footprint (patch2). For details, please see individual patches! Thanks ! v1->v2: - Make hash generic and place it under lib Francesco Fusco (2): li

Re: [ovs-dev] [RFC 3/4] coverage: Use OVS_CONSTRUCTOR to initialize the coverage counter array

2013-12-12 Thread Helmut Schaa
On Wed, Dec 11, 2013 at 10:00 PM, Ben Pfaff wrote: > On Tue, Dec 10, 2013 at 02:49:29PM +0100, Helmut Schaa wrote: >> Use a global array that gets initialized by constructor functions >> per coverage definition. >> >> Signed-off-by: Helmut Schaa >> --- >> >> The realloc is not the nicest thing to

[ovs-dev] [PATCH v2 2/2] netdev-linux: Read packet auxdata to obtain vlan_tid

2013-12-12 Thread Simon Horman
If VLAN acceleration is used when the kernel receives a packet then the outer-most VLAN tag will not be present in the packet when it is received by netdev-linux. Rather, it will be present in auxdata. This patch uses recvmsg() instead of recv() to read auxdata for each packet and if the vlan_tid

[ovs-dev] [PATCH v2 0/2] netdev-linux: Read packet auxdata to obtain vlan_tid

2013-12-12 Thread Simon Horman
If VLAN acceleration is used when the kernel receives a packet then the outer-most VLAN tag will not be present in the packet when it is received by netdev-linux. Rather, it will be present in auxdata. The purpose of this series is to obtain the vlan_tid from auxdata as appropriate and push it ont

  1   2   >