[ovs-dev] [PATCH v2.39 1/7] odp: Only pass vlan_tci to commit_vlan_action()

2013-09-09 Thread Simon Horman
From: Joe Stringer This allows for future patches to pass different tci values to commit_vlan_action() without passing an entire flow structure. Signed-off-by: Joe Stringer Signed-off-by: Simon Horman --- v2.36 - v2.39 * No change v2.35 * First post --- lib/odp-util.c | 12 ++-- 1

[ovs-dev] [PATCH v2.39 3/7] ofp-actions: Add OFPUTIL_OFPAT13_PUSH_MPLS

2013-09-09 Thread Simon Horman
From: Joe Stringer This patch adds a new compatibility enum for use with MPLS, so that the differing behaviour between OpenFlow 1.2 and 1.3 can be implemented in ofproto-dpif-xlate. Signed-off-by: Joe Stringer Signed-off-by: Simon Horman --- v2.36 - v2.39 * No change v2.35 * First post ---

[ovs-dev] [PATCH v2.39 4/7] ofp-actions: Add separate OpenFlow 1.3 action parser

2013-09-09 Thread Simon Horman
From: Joe Stringer This patch adds new ofpact_from_openflow13() and ofpacts_from_openflow13() functions parallel to the existing ofpact handling code. In the OpenFlow 1.3 version, push_mpls is handled differently, but all other actions are handled by the existing code. For push_mpls, ofpact_push

[ovs-dev] [PATCH v2.39 2/7] odp: Allow VLAN actions after MPLS actions

2013-09-09 Thread Simon Horman
From: Joe Stringer OpenFlow 1.2 and 1.3 differ on their handling of MPLS actions in the presence of VLAN tags. To allow correct behaviour to be committed in each situation, this patch adds a second round of VLAN tag action handling to commit_odp_actions(), which occurs after MPLS actions. This is

[ovs-dev] [PATCH v2.39 7/7] datapath: Add basic MPLS support to kernel

2013-09-09 Thread Simon Horman
Allow datapath to recognize and extract MPLS labels into flow keys and execute actions which push, pop, and set labels on packets. Based heavily on work by Leo Alterman, Ravi K, Isaku Yamahata and Joe Stringer. Cc: Ravi K Cc: Leo Alterman Cc: Isaku Yamahata Cc: Joe Stringer Signed-off-by: Sim

[ovs-dev] [PATCH v2.39 0/7] MPLS actions and matches

2013-09-09 Thread Simon Horman
Hi, This series implements MPLS actions and matches based on work by Ravi K, Leo Alterman, Yamahata-san and Joe Stringer. This series provides two changes * Provide user-space support for the VLAN/MPLS tag insertion order up to and including OpenFlow 1.2, and the different ordering specified

[ovs-dev] [PATCH v2.39 6/7] datapath: Break out deacceleration portion of vlan_push

2013-09-09 Thread Simon Horman
Break out deacceleration portion of vlan_push into vlan_put so that it may be re-used by mpls_push. For both vlan_push and mpls_push if there is an accelerated VLAN tag present then it should be deaccelerated, adding it to the data of the skb, before the new tag is added. Signed-off-by: Simon Hor

[ovs-dev] [PATCH v2.39 5/7] lib: Push MPLS tags in the OpenFlow 1.3 ordering

2013-09-09 Thread Simon Horman
From: Joe Stringer This patch modifies the push_mpls behaviour to follow the OpenFlow 1.3 specification in the presence of VLAN tagged packets. From the spec: "Newly pushed tags should always be inserted as the outermost tag in the outermost valid location for that tag. When a new VLAN tag is pu

Re: [ovs-dev] [PATCH v2.39 0/7] MPLS actions and matches

2013-09-09 Thread Simon Horman
On Mon, Sep 09, 2013 at 04:20:00PM +0900, Simon Horman wrote: > Hi, > > This series implements MPLS actions and matches based on work by > Ravi K, Leo Alterman, Yamahata-san and Joe Stringer. > > This series provides two changes > > * Provide user-space support for the VLAN/MPLS tag insertion or

Re: [ovs-dev] [RFC PATCH] ofproto: update flow_stats flags on flow_stats_request

2013-09-09 Thread Daniel Baluta
On Mon, Sep 9, 2013 at 1:58 AM, Ben Pfaff wrote: > On Sun, Sep 08, 2013 at 02:21:25AM +0300, Daniel Baluta wrote: >> This is a first step in implementing 'on demand flow counters'. >> We save flow_mod flags into newly created rule when a new flow >> is added, and echo them back in the flow stats r

[ovs-dev] [PATCH] lisp: Reset vlan tag on send.

2013-09-09 Thread Pravin B Shelar
Lisp needs to discards all l2 packet headers but if vlan tx is hw-acceleraed vlan tag is stored in skb struct. Following patch resets it. Signed-off-by: Pravin B Shelar --- datapath/vport-lisp.c |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/datapath/vport-lisp.c b/da

Re: [ovs-dev] [PATCH v2 2/2] datapath lisp: Use ovs offload compat functionality.

2013-09-09 Thread Pravin Shelar
On Fri, Sep 6, 2013 at 12:02 PM, Jesse Gross wrote: > On Fri, Sep 6, 2013 at 11:16 AM, Pravin B Shelar wrote: >> OVS already has compat functions to handle GSO packets. >> Following patch get rid of GSO packet handling in lisp >> and use ovs iptunnel_xmit() function for same. >> >> CC: Lori Jakab

Re: [ovs-dev] [PATCH v2] datapath: Move flow table rehashing to flow install.

2013-09-09 Thread Pravin Shelar
On Fri, Sep 6, 2013 at 4:42 PM, Jesse Gross wrote: > On Fri, Sep 6, 2013 at 2:54 PM, Pravin B Shelar wrote: >> Rehashing in ovs-workqueue can cause ovs-mutex lock contentions >> in case of heavy flow setups where both needs ovs-mutex. So by >> moving rehashing to flow-setup we can eliminate cont

Re: [ovs-dev] [PATCH] lib/timeval: don't forget to initialize a rwlock

2013-09-09 Thread Ben Pfaff
On Mon, Sep 09, 2013 at 03:56:23PM +0900, YAMAMOTO Takashi wrote: > Commit 31ef9f5178 (timeval: Remove CACHE_TIME scheme.) removed > initialization of a rwlock which is still used for some operations. > This restores it. Applied, thank you! ___ dev maili

[ovs-dev] [PATCH v2] Don't set subprogram name to empty

2013-09-09 Thread gyang
From: Guolin Yang In monitor_daemon(), it set subprogram_name to "" which causes system crash in some platform. This change set subprogram name to program name. Signed-off-by: Guolin Yang --- Based on Ben's comments, only set pthread's subprogram name to non empty --- lib/util.c |7 ---

[ovs-dev] [PATCH] Trigger bridge reconfigure from ofproto layer

2013-09-09 Thread gyang
From: Guolin Yang There are two models in OVS in configure datapath port: 1. Datapath port created before user space bridge is configured. In this model, datapath can be deleted or added independent of user-space. 2. Datapath port created when ovsdb is requested to add the relevant port.

Re: [ovs-dev] [PATCH] lisp: Reset vlan tag on send.

2013-09-09 Thread Jesse Gross
On Mon, Sep 9, 2013 at 9:21 AM, Pravin B Shelar wrote: > Lisp needs to discards all l2 packet headers but if vlan tx > is hw-acceleraed vlan tag is stored in skb struct. Following > patch resets it. > > Signed-off-by: Pravin B Shelar Acked-by: Jesse Gross ___

Re: [ovs-dev] [PATCH] datapath: Remove compat workqueue.

2013-09-09 Thread Jesse Gross
On Mon, Sep 9, 2013 at 1:53 PM, Pravin B Shelar wrote: > OVS has its own workq implementation for coupe of reasons. first > was to avoid system freeze due to ovs-flow rehash softlockup. > We have moved out rehash from workq, So this problem does not exist. > second was related bugs in kernel workq

[ovs-dev] [PATCH 03/11] ofproto: Factor code out of collect_rules_{loose, strict} into new helper.

2013-09-09 Thread Ben Pfaff
Signed-off-by: Ben Pfaff --- ofproto/ofproto.c | 125 +++-- 1 file changed, 55 insertions(+), 70 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index e7ee60e..81b6c43 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -2935

[ovs-dev] [PATCH 01/11] ofproto: Do not call ->rule_destruct() if ->rule_construct() failed.

2013-09-09 Thread Ben Pfaff
Found by inspection. Signed-off-by: Ben Pfaff --- ofproto/ofproto.c | 23 +++ 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 4d33de7..03738ab 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -199,6 +199,7

[ovs-dev] [PATCH 00/11] refactor locking rules for rules

2013-09-09 Thread Ben Pfaff
This is a set of precursor patches for moving the "learn" action into individual threads rather than doing them all in the main thread, which in turn is necessary to fix a regression in the promptness of learning. Ben Pfaff (11): ofproto: Do not call ->rule_destruct() if ->rule_construct() faile

[ovs-dev] [PATCH 04/11] ofproto: Correct comments.

2013-09-09 Thread Ben Pfaff
Signed-off-by: Ben Pfaff Signed-off-by: Ben Pfaff --- ofproto/ofproto.c |5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 81b6c43..388463a 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -2276,7 +2276,7 @@ ofproto_r

[ovs-dev] [PATCH 06/11] ofproto-dpif: Remove vestigial "clogged" feature.

2013-09-09 Thread Ben Pfaff
Signed-off-by: Ben Pfaff --- ofproto/ofproto-dpif.c | 64 ++-- 1 file changed, 2 insertions(+), 62 deletions(-) diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index b52d4ee..97735e2 100644 --- a/ofproto/ofproto-dpif.c +++ b/ofproto/ofpr

[ovs-dev] [PATCH 05/11] ofproto: Avoid gratuitous memory allocation and free.

2013-09-09 Thread Ben Pfaff
Signed-off-by: Ben Pfaff --- ofproto/ofproto.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 388463a..b027873 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -1717,10 +1717,9 @@ ofproto_add_flow(struct ofproto *ofpro

[ovs-dev] [PATCH 08/11] ofproto: Move function find_meter() into ofpacts as ofpacts_get_meter().

2013-09-09 Thread Ben Pfaff
ofproto is too big anyway so we might as well move out code that can reasonably live elsewhere. Signed-off-by: Ben Pfaff --- lib/ofp-actions.c | 24 lib/ofp-actions.h |1 + ofproto/ofproto.c | 33 + 3 files changed, 30 insertions(+

[ovs-dev] [PATCH 09/11] ofproto: Remove soon-to-be-invalid optimizations.

2013-09-09 Thread Ben Pfaff
Until now, ofproto_add_flow() and ofproto_delete_flow() assumed that the flow table could not change between its flow table check and its later modification to the flow table. This assumption will soon be untrue, so remove it. Signed-off-by: Ben Pfaff --- ofproto/ofproto.c | 64 ++

[ovs-dev] [PATCH 10/11] ofproto: Break actions out of rule into new rule_actions structure.

2013-09-09 Thread Ben Pfaff
This permits code to ensure long-term access to a rule's actions without holding a long-term lock on the rule's rwlock. Signed-off-by: Ben Pfaff --- ofproto/connmgr.c|4 +- ofproto/ofproto-dpif-xlate.c | 16 +++-- ofproto/ofproto-dpif.c | 26 +--- ofproto/ofproto-dp

[ovs-dev] [PATCH 07/11] ofproto: Merge ofproto_rule_delete() and ofproto_delete_rule().

2013-09-09 Thread Ben Pfaff
These functions were identical but had different names (one just called the other). Make them a single function. Signed-off-by: Ben Pfaff --- ofproto/ofproto.c | 35 +++ 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto

[ovs-dev] [PATCH 02/11] ofproto: Support out_group feature when matching on cookie.

2013-09-09 Thread Ben Pfaff
Found by inspection. Signed-off-by: Ben Pfaff --- ofproto/ofproto.c |6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 03738ab..e7ee60e 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -2982,7 +2982,8 @@ collect_rules

[ovs-dev] [PATCH 11/11] ofproto: Add a ref_count to "struct rule" to protect it from being freed.

2013-09-09 Thread Ben Pfaff
Taking a read-lock on the 'rwlock' member of struct rule prevents members of the rule from changing. This is a short-term use of the 'rwlock': one takes the lock, reads some members, and releases the lock. Taking a read-lock on the 'rwlock' also prevents the rule from being freed. This is often a

Re: [ovs-dev] [PATCH] lisp: Reset vlan tag on send.

2013-09-09 Thread Pravin Shelar
Thanks. I pushed patch to master. On Mon, Sep 9, 2013 at 1:26 PM, Jesse Gross wrote: > On Mon, Sep 9, 2013 at 9:21 AM, Pravin B Shelar wrote: >> Lisp needs to discards all l2 packet headers but if vlan tx >> is hw-acceleraed vlan tag is stored in skb struct. Following >> patch resets it. >> >> S

Re: [ovs-dev] [PATCH] datapath: Remove compat workqueue.

2013-09-09 Thread Pravin Shelar
On Mon, Sep 9, 2013 at 2:07 PM, Jesse Gross wrote: > On Mon, Sep 9, 2013 at 1:53 PM, Pravin B Shelar wrote: >> OVS has its own workq implementation for coupe of reasons. first >> was to avoid system freeze due to ovs-flow rehash softlockup. >> We have moved out rehash from workq, So this problem

Re: [ovs-dev] [PATCH v2] Don't set subprogram name to empty

2013-09-09 Thread Ben Pfaff
On Mon, Sep 09, 2013 at 09:38:01AM -0700, gy...@nicira.com wrote: > From: Guolin Yang > > In monitor_daemon(), it set subprogram_name to "" which causes > system crash in some platform. This change set subprogram name > to program name. > > Signed-off-by: Guolin Yang > --- > Based on Ben's comm

[ovs-dev] [PATCH] datapath: Remove compat workqueue.

2013-09-09 Thread Pravin B Shelar
OVS has its own workq implementation for coupe of reasons. first was to avoid system freeze due to ovs-flow rehash softlockup. We have moved out rehash from workq, So this problem does not exist. second was related bugs in kernel workq implementation in pre-2.6.32 kernel. But we have dropped suppor

Re: [ovs-dev] [PATCH 01/11] ofproto: Do not call ->rule_destruct() if ->rule_construct() failed.

2013-09-09 Thread Ethan Jackson
Acked-by: Ethan Jackson On Mon, Sep 9, 2013 at 2:22 PM, Ben Pfaff wrote: > Found by inspection. > > Signed-off-by: Ben Pfaff > --- > ofproto/ofproto.c | 23 +++ > 1 file changed, 15 insertions(+), 8 deletions(-) > > diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c > in

Re: [ovs-dev] [PATCH 02/11] ofproto: Support out_group feature when matching on cookie.

2013-09-09 Thread Ethan Jackson
Acked-by: Ethan Jackson On Mon, Sep 9, 2013 at 2:22 PM, Ben Pfaff wrote: > Found by inspection. > > Signed-off-by: Ben Pfaff > --- > ofproto/ofproto.c |6 -- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c > index 03738ab..e7ee6

[ovs-dev] [PATCH 1/2] Report timestamps in millisecond resolution in log messages.

2013-09-09 Thread Paul Ingram
To make debugging easier. --- lib/dynamic-string.c | 21 +++-- lib/dynamic-string.h |7 ++--- lib/table.c |2 +- lib/timeval.c | 79 + lib/timeval.h |9 ++ lib/vlog.c| 16 +

[ovs-dev] [PATCH 2/2] ovsdb: timestamp database records to millisecond resolution.

2013-09-09 Thread Paul Ingram
The ovsdb-server compaction timing logic is written assuming milliscond resolution timestamps but ovsdb-server wrote second resolution timestamps. This commit changes ovsdb-server to write millisecond resolution timestamps and ovsdb-tool to report millisecond timestamps. This raises two compatibi

[ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Vasiliy Tolstov
I need to debug some issues with openvswitch openflow messages that sended to my own controller, where I can find wireshark plugin to see what actually happening? I can find some dissectors but all needs patching and have errors. I have wireshark 1.8 and support for ofp 1.0. Thanks for any links an

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Ben Pfaff
On Tue, Sep 10, 2013 at 06:56:13AM +0400, Vasiliy Tolstov wrote: > I need to debug some issues with openvswitch openflow messages that sended > to my own controller, where I can find wireshark plugin to see what > actually happening? > I can find some dissectors but all needs patching and have erro

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Vasiliy Tolstov
On Sep 10, 2013 7:16 AM, "Ben Pfaff" wrote: > I don't think that such a dissector has ever been part of Open vSwitch. Thank you. Is that possible that openvswitch 1.12 send openflow message of dhcp discover with all options bytes equal to 0? I'm try in-band / out-band but this no helps _

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Ben Pfaff
On Tue, Sep 10, 2013 at 07:27:51AM +0400, Vasiliy Tolstov wrote: > Is that possible that openvswitch 1.12 send openflow message of dhcp > discover with all options bytes equal to 0? No version of Open vSwitch ever generates or modifies DHCP messages. ___

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Ben Pfaff
On Tue, Sep 10, 2013 at 08:09:04AM +0400, Vasiliy Tolstov wrote: > 2013/9/10 Ben Pfaff : > > No version of Open vSwitch ever generates or modifies DHCP messages. > > Hmm. I'm find some dissector that support 0openflow 1.0. > This is openflow message that send to controoller. > As You can see it do

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Vasiliy Tolstov
2013/9/10 Ben Pfaff : > No version of Open vSwitch ever generates or modifies DHCP messages. If > Open vSwitch sends a DHCP message to the controller in a packet-in, and > the packet-in does not show a magic cookie or option bytes, then it is > because, when Open vSwitch received the DHCP message,

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Ben Pfaff
On Tue, Sep 10, 2013 at 08:14:37AM +0400, Vasiliy Tolstov wrote: > 2013/9/10 Ben Pfaff : > > No version of Open vSwitch ever generates or modifies DHCP messages. If > > Open vSwitch sends a DHCP message to the controller in a packet-in, and > > the packet-in does not show a magic cookie or option

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Vasiliy Tolstov
2013/9/10 Ben Pfaff : > I don't know. Are these options beyond the number of bytes sent by > default within an OpenFlow packet-in? No in both cases thernet frame message have 342 bytes. -- Vasiliy Tolstov, e-mail: v.tols...@selfip.ru jabber: v...@selfip.ru _

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Ben Pfaff
On Tue, Sep 10, 2013 at 08:19:03AM +0400, Vasiliy Tolstov wrote: > 2013/9/10 Ben Pfaff : > > I don't know. Are these options beyond the number of bytes sent by > > default within an OpenFlow packet-in? > > > No in both cases thernet frame message have 342 bytes. OpenFlow defaults to sending the

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Ben Pfaff
On Tue, Sep 10, 2013 at 08:23:42AM +0400, Vasiliy Tolstov wrote: > 2013/9/10 Vasiliy Tolstov : > > > > No in both cases thernet frame message have 342 bytes. > > This is openflow ethernet frame in packet in > ff ff ff ff ff ff 52 54 00 5c cd 3a 08 00 45 > 0010 10 01 48 00 00 00 00 80 11 3

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Vasiliy Tolstov
2013/9/10 Ben Pfaff : > The differences between these messages are different dhcp xids > (0x0134cb48 versus 0x0134cb4b) and, if I'm counting correctly, different > dhcp yiaddrs. I see no other differences other than the first frame > being cut off after 128 bytes. That is undoubtedly because you

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Ben Pfaff
On Tue, Sep 10, 2013 at 08:41:40AM +0400, Vasiliy Tolstov wrote: > 2013/9/10 Ben Pfaff : > > The differences between these messages are different dhcp xids > > (0x0134cb48 versus 0x0134cb4b) and, if I'm counting correctly, different > > dhcp yiaddrs. I see no other differences other than the first

Re: [ovs-dev] Openflow ofp 1.o wireshark plugin

2013-09-09 Thread Vasiliy Tolstov
2013/9/10 Ben Pfaff : > Yes, read the OpenFlow spec. Thanks for answers. -- Vasiliy Tolstov, e-mail: v.tols...@selfip.ru jabber: v...@selfip.ru ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev