[ovs-dev] [PATCH] openvswitch: Move LRO check from transmit to receive.

2013-02-06 Thread Jesse Gross
The check for LRO packets was incorrectly put in the transmit path instead of on receive. Since this check is supposed to protect OVS (and other parts of the system) from packets that it cannot handle it is obviously not useful on egress. Therefore, this commit moves it back to the receive side.

[ovs-dev] [GIT net] Open vSwitch

2013-02-06 Thread Jesse Gross
One bug fix for net/3.8 for a long standing problem that was reported a few times recently. The following changes since commit a49f0d1ea3ec94fc7cf33a7c36a16343b74bd565: Linux 3.8-rc1 (2012-12-21 17:19:00 -0800) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kerne

Re: [ovs-dev] [PATCH 01/16] packet: Correctly set ethertype in pop_mpls()

2013-02-06 Thread Simon Horman
On Wed, Feb 06, 2013 at 09:27:46AM -0800, Ben Pfaff wrote: > On Wed, Feb 06, 2013 at 10:53:52PM +0900, Simon Horman wrote: > > The ethertype should be set before resetting l2_5 in order > > for the packet to be updated correctly. > > > > Signed-off-by: Simon Horman > > Applied, thanks. Great, t

[ovs-dev] [PATCH] stream-unix: append ovs_rundir to socket If socket path specified is relative to ovs_rundir(), append the directory name to in unix_open.

2013-02-06 Thread Pavithra Ramesh
Taken care of the memroy leak, used xasprintf instead. Also included the change in bridge.c to relax the whitelist check. Signed-off-by: Pavithra Ramesh --- lib/stream-unix.c | 11 ++- vswitchd/bridge.c |6 -- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/

Re: [ovs-dev] VXLAN ports not working with latest master

2013-02-06 Thread Ethan Jackson
> BTW: I've got things working now such that I can create VXLAN ports > again. I just need to clean things up a bit and add add the code to handle > tbl_backer management. With any luck I'll have some patches to send > out today yet. Awesome, sounds great. Ethan > > Thanks, > Kyle > >> Ethan >>

Re: [ovs-dev] VXLAN ports not working with latest master

2013-02-06 Thread Kyle Mestery (kmestery)
On Feb 6, 2013, at 12:57 PM, Ethan Jackson wrote: >> I see an issue right now. It looks like netdev_vport_get_dpif_port() >> currently just returns a const char * by returning a pointer to the dpif_port >> pointer on vport_class. Modifying this behavior to return a dynamic >> name here means we n

Re: [ovs-dev] VXLAN ports not working with latest master

2013-02-06 Thread Ethan Jackson
> I see an issue right now. It looks like netdev_vport_get_dpif_port() > currently just returns a const char * by returning a pointer to the dpif_port > pointer on vport_class. Modifying this behavior to return a dynamic > name here means we need to allocate a char * pointer here and modify > the c

Re: [ovs-dev] [PATCH 03/16] packet: packet_get_tcp_flags: use flow's innermost dl_type

2013-02-06 Thread Ben Pfaff
On Wed, Feb 06, 2013 at 10:53:54PM +0900, Simon Horman wrote: > Use the innermost dl_type when decoding L3 and L4 data from a packet. > > Signed-off-by: Simon Horman Applied, thanks. ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailm

Re: [ovs-dev] [PATCH 02/16] odp-util: commit_set_nw_action: use flow's innermost dl_type

2013-02-06 Thread Ben Pfaff
On Wed, Feb 06, 2013 at 10:53:53PM +0900, Simon Horman wrote: > Use the innermost dl_type when decoding L3 and L4 data from a packet. > > Signed-off-by: Simon Horman Applied, thanks. ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailm

Re: [ovs-dev] [PATCH 01/16] packet: Correctly set ethertype in pop_mpls()

2013-02-06 Thread Ben Pfaff
On Wed, Feb 06, 2013 at 10:53:52PM +0900, Simon Horman wrote: > The ethertype should be set before resetting l2_5 in order > for the packet to be updated correctly. > > Signed-off-by: Simon Horman Applied, thanks. ___ dev mailing list dev@openvswitch.o

Re: [ovs-dev] [PATCH] FAQ: Fix typo (doubled "later").

2013-02-06 Thread Ben Pfaff
On Wed, Feb 06, 2013 at 05:20:21PM +, Kyle Mestery (kmestery) wrote: > On Feb 6, 2013, at 11:16 AM, Ben Pfaff wrote: > > Signed-off-by: Ben Pfaff > > > Looks good Ben. Thanks, I applied this. (When I was a kid we had some neighbors, the Lators, who had twins. I guess that's a doubled Lat

Re: [ovs-dev] [PATCH] FAQ: Fix typo (doubled "later").

2013-02-06 Thread Justin Pettit
Looks good. --Justin On Feb 6, 2013, at 9:16 AM, Ben Pfaff wrote: > Signed-off-by: Ben Pfaff > --- > FAQ |6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/FAQ b/FAQ > index aacd6de..e253b16 100644 > --- a/FAQ > +++ b/FAQ > @@ -360,9 +360,9 @@ A: Open vSwitch us

Re: [ovs-dev] [PATCH] FAQ: Fix typo (doubled "later").

2013-02-06 Thread Kyle Mestery (kmestery)
On Feb 6, 2013, at 11:16 AM, Ben Pfaff wrote: > Signed-off-by: Ben Pfaff Looks good Ben. ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

[ovs-dev] [PATCH] FAQ: Fix typo (doubled "later").

2013-02-06 Thread Ben Pfaff
Signed-off-by: Ben Pfaff --- FAQ |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/FAQ b/FAQ index aacd6de..e253b16 100644 --- a/FAQ +++ b/FAQ @@ -360,9 +360,9 @@ A: Open vSwitch uses different kinds of flows for different purposes: - "ovs-dpctl dump-flows [dp

Re: [ovs-dev] [PATCH] FAQ: Expand on how one would implement VLAN handling via flows.

2013-02-06 Thread Ben Pfaff
On Wed, Feb 06, 2013 at 09:12:10AM -0800, Justin Pettit wrote: > On Feb 6, 2013, at 8:43 AM, Ben Pfaff wrote: > > > + In some situations, you can use "normal switching" as a component > > + of your OpenFlow actions, e.g. by putting "normal" into the lists > > + of actions on ovs-ofctl or by

Re: [ovs-dev] [PATCH] FAQ: Expand on how one would implement VLAN handling via flows.

2013-02-06 Thread Justin Pettit
On Feb 6, 2013, at 8:43 AM, Ben Pfaff wrote: > + In some situations, you can use "normal switching" as a component > + of your OpenFlow actions, e.g. by putting "normal" into the lists > + of actions on ovs-ofctl or by outputting to OFPP_NORMAL from an > + OpenFlow controller. In situati

Re: [ovs-dev] [PATCH] ovs-ctl: Add support for built-in (non-modular) kernel support.

2013-02-06 Thread Ben Pfaff
On Wed, Feb 06, 2013 at 03:54:14PM +0800, Cong Wang wrote: > On 02/06/2013 03:14 AM, Ben Pfaff wrote: > >Reported-by: Cong Wang > >Signed-off-by: Ben Pfaff > >--- > >Cong, will you verify that this makes the init script work OK for > >your kernel with OVS built-in? > > I got: > > # ovs-dpctl s

[ovs-dev] [PATCH] FAQ: Expand on how one would implement VLAN handling via flows.

2013-02-06 Thread Ben Pfaff
Signed-off-by: Ben Pfaff --- FAQ | 18 +- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/FAQ b/FAQ index ce5df27..8689950 100644 --- a/FAQ +++ b/FAQ @@ -795,11 +795,19 @@ A: The configuration for VLANs in the Open vSwitch database (e.g. via or through other

Re: [ovs-dev] VXLAN ports not working with latest master

2013-02-06 Thread Kyle Mestery (kmestery)
On Feb 4, 2013, at 3:50 PM, Ethan Jackson wrote: >> Yes, I'd like to help here. Can you shoot me any ideas you may have? >> I've been looking at this in my free time today. Tomorrow I should be >> able to dedicate most of the day to it. > > Ok sounds good. Thanks for taking this on. > Just ge

[ovs-dev] [PATCH 05/16] ofproto: Allow actions richer matches based on actions

2013-02-06 Thread Simon Horman
If the actions of a flow allow further decoding of L3 and L4 data to provide a richer match then use this richer match. For example: In the case of MPLS, L3 and L4 information may not initially be decoded from the frame as the ethernet type of the frame is an MPLS type and no information is known

[ovs-dev] [PATCH 0/16 v2.18] Basic MPLS actions and matches (continued) (repost)

2013-02-06 Thread Simon Horman
[repost, this time with the correct series of patches] Hi, This series implements basic MPLS actions and matches based on work by Ravi K, Leo Alterman and Yamahata-san. The main limitation of this implementation is that it only supports manipulating the outer-most MPLS label. It builds on the M

[ovs-dev] [PATCH 09/16] Add support for copy_ttl_out action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ copy_ttl_out action. And also adds an NX copy_ttl_out action. The implementation does not support copying in the case where the outermost header is IP as it is unclear to me that Open vSwtich has a notion of an inner IP header to copy the TLL from. The hand

[ovs-dev] [PATCH 07/16] Add support for dec_mpls_ttl action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ dec_mpls_ttl action. And also adds an NX dec_mpls_ttl action. The handling of the TTL modification is entirely handled in userspace. Reviewed-by: Isaku Yamahata Signed-off-by: Simon Horman --- v2.18 * No change v2.17 * Rebase * As suggested by Ben Pfaf

[ovs-dev] [PATCH 12/16] datapath: Split ovs_flow_extract

2013-02-06 Thread Simon Horman
Allow repeated extraction of flow from packets Split the L3 and above portion of ovs_flow_extract() out into ovs_flow_extract_l3_onwards() and call ovs_flow_extract_l3_onwards() from ovs_flow_extract(). This is to allow re-extraction of L3 and higher information using an ethernet type supplied by

[ovs-dev] [PATCH 16/16] datapath: Allow IP actions for MPLS

2013-02-06 Thread Simon Horman
Allow copy_ttl_in to function in the case where: a) The outer header is MPLS; b) The next-outer header is IP and; c) The resulting nw ttl will be different from its existing value In this circumstance a set ipv4 action will be used to adjust the TTL but the dl_type of the match will be ETH_P_MPLS_

[ovs-dev] [PATCH 13/16] datapath: Inner And Outer Flows

2013-02-06 Thread Simon Horman
Allow a flow to be visible in two forms, an outer flow and an inner flow. This may occur if the actions allow further decoding of a packet to provide a more fine-grained match. In this case the first-pass coarse-grained match will hit the outer-flow and the second-pass fined-grained match will hit

[ovs-dev] [PATCH 11/16] datapath: Add basic MPLS support to kernel

2013-02-06 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 and Ravi K. Cc: Ravi K Cc: Leo Alterman Reviewed-by: Isaku Yamahata Signed-off-by: Simon Horman --- v2.18 * No change v2.

[ovs-dev] [PATCH 08/16] Add support for set_mpls_ttl action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ set_mpls_ttl action. And also adds an NX set_mpls_ttl action. The handling of the TTL modification is entirely handled in userspace. Reviewed-by: Isaku Yamahata Signed-off-by: Simon Horman --- v2.18 * No change v2.17 * As suggested by Ben Pfaff - Use

[ovs-dev] [PATCH 15/16] datapath: ovs_flow_used: use encap_eth_type

2013-02-06 Thread Simon Horman
The ethernet type of an encapsulated frame may be obtained from actions. If so it should be used to correct decoding of L3 and L4 packet data. Signed-off-by: Simon Horman --- v2.14 - v2.18 * No change v2.13 * As suggested by Jarno Rajahalme - Initialise encap_eth_type as 0 in ovs_dp_process_

[ovs-dev] [PATCH 02/16] odp-util: commit_set_nw_action: use flow's innermost dl_type

2013-02-06 Thread Simon Horman
Use the innermost dl_type when decoding L3 and L4 data from a packet. Signed-off-by: Simon Horman --- v2.13 - v2.18 * No change v2.12 * Use flow_innermost_dl_type helper v2.11 * First post --- lib/odp-util.c |6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/odp

[ovs-dev] [PATCH 10/16] Add support for copy_ttl_in action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ copy_ttl_in action. And also adds an NX copy_ttl_out action. The implementation does not support copying in the case where the outermost header is IP as it is unclear to me that Open vSwtich has a notion of an inner IP header to copy the TLL from. The imple

[ovs-dev] [PATCH 14/16] datapath: ovs_flow_to_nlattrs: use encap_eth_type

2013-02-06 Thread Simon Horman
The ethernet type of an encapsulated frame may be obtained from actions. If so it should be used to allow a richer conversion of a flow to nlattrs. Signed-off-by: Simon Horman --- v2.18 * No change v2.17 * Rebase v2.12 - v2.16 * No change v2.11 * First post --- datapath/datapath.c |4 ++

[ovs-dev] [PATCH 04/16] actions: Allow secondary decoding of a flow

2013-02-06 Thread Simon Horman
Actions may provide information to allow further decoding of a flow. For example: In the case of MPLS, L3 and L4 information may not initially be decoded from the frame as the ethernet type of the frame is an MPLS type and no information is known about the type of the inner frame. However, the t

[ovs-dev] [PATCH 03/16] packet: packet_get_tcp_flags: use flow's innermost dl_type

2013-02-06 Thread Simon Horman
Use the innermost dl_type when decoding L3 and L4 data from a packet. Signed-off-by: Simon Horman --- v2.18 * Update to use dl_type_is_ip_any() wrapper. I am reluctant to update is_ip_any() to use flow_innermost_dl_type(flow) as I am not convinced that this is correct for all users of is_ip

[ovs-dev] [PATCH 06/16] dpif-netdev: Inner And Outer Flows

2013-02-06 Thread Simon Horman
This is the user-space datapath component of this change Allow a flow to be visible in two forms, an outer flow and an inner flow. This may occur if the actions allow further decoding of a packet to provide a more fine-grained match. In this case the first-pass coarse-grained match will hit the ou

[ovs-dev] [PATCH 01/16] packet: Correctly set ethertype in pop_mpls()

2013-02-06 Thread Simon Horman
The ethertype should be set before resetting l2_5 in order for the packet to be updated correctly. Signed-off-by: Simon Horman --- v1.18 * First post --- lib/packets.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/packets.c b/lib/packets.c index 4f57d16..424f7ac 10

Re: [ovs-dev] [PATCH 0/16 v2.18] Basic MPLS actions and matches (continued)

2013-02-06 Thread Simon Horman
On Wed, Feb 06, 2013 at 06:04:27PM +0900, Simon Horman wrote: > Hi, > > This series implements basic MPLS actions and matches based on work by > Ravi K, Leo Alterman and Yamahata-san. > > The main limitation of this implementation is that it only > supports manipulating the outer-most MPLS label.

Re: [ovs-dev] [PATCH] RFC: Pass more packet and flow key info to userspace.

2013-02-06 Thread Rajahalme, Jarno (NSN - FI/Espoo)
On Feb 6, 2013, at 2:57 , ext Jesse Gross wrote: >> >> While I would not see a problem in passing a key hash computed with an >> undisclosed algorithm up to userspace, I see your point. >> >> In my tests it seems that about 1/3 of the benefit is attainable with >> deferred >> layer pointer comp

[ovs-dev] [PATCH 15/16] datapath: ovs_flow_used: use encap_eth_type

2013-02-06 Thread Simon Horman
The ethernet type of an encapsulated frame may be obtained from actions. If so it should be used to correct decoding of L3 and L4 packet data. Signed-off-by: Simon Horman --- v2.14 - v2.17 * No change v2.13 * As suggested by Jarno Rajahalme - Initialise encap_eth_type as 0 in ovs_dp_process_

[ovs-dev] [PATCH 04/16] actions: Allow secondary decoding of a flow

2013-02-06 Thread Simon Horman
Actions may provide information to allow further decoding of a flow. For example: In the case of MPLS, L3 and L4 information may not initially be decoded from the frame as the ethernet type of the frame is an MPLS type and no information is known about the type of the inner frame. However, the t

[ovs-dev] [PATCH 14/16] datapath: ovs_flow_to_nlattrs: use encap_eth_type

2013-02-06 Thread Simon Horman
The ethernet type of an encapsulated frame may be obtained from actions. If so it should be used to allow a richer conversion of a flow to nlattrs. Signed-off-by: Simon Horman --- v2.17 * Rebase v2.12 - v2.16 * No change v2.11 * First post --- datapath/datapath.c |4 ++-- datapath/flow.c

[ovs-dev] [PATCH 07/16] Add support for dec_mpls_ttl action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ dec_mpls_ttl action. And also adds an NX dec_mpls_ttl action. The handling of the TTL modification is entirely handled in userspace. Reviewed-by: Isaku Yamahata Signed-off-by: Simon Horman --- v2.17 * Rebase * As suggested by Ben Pfaff - Use consisten

[ovs-dev] [PATCH 08/16] Add support for set_mpls_ttl action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ set_mpls_ttl action. And also adds an NX set_mpls_ttl action. The handling of the TTL modification is entirely handled in userspace. Reviewed-by: Isaku Yamahata Signed-off-by: Simon Horman --- v2.17 * As suggested by Ben Pfaff - Use consistent termino

[ovs-dev] [PATCH 11/16] datapath: Add basic MPLS support to kernel

2013-02-06 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 and Ravi K. Cc: Ravi K Cc: Leo Alterman Reviewed-by: Isaku Yamahata Signed-off-by: Simon Horman --- v2.17 * As suggested b

[ovs-dev] [PATCH 02/16] odp-util: commit_set_nw_action: use flow's innermost dl_type

2013-02-06 Thread Simon Horman
Use the innermost dl_type when decoding L3 and L4 data from a packet. Signed-off-by: Simon Horman --- v2.13 - v2.17 * No change v2.12 * Use flow_innermost_dl_type helper v2.11 * First post --- lib/odp-util.c |6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/odp

[ovs-dev] [PATCH 12/16] datapath: Split ovs_flow_extract

2013-02-06 Thread Simon Horman
Allow repeated extraction of flow from packets Split the L3 and above portion of ovs_flow_extract() out into ovs_flow_extract_l3_onwards() and call ovs_flow_extract_l3_onwards() from ovs_flow_extract(). This is to allow re-extraction of L3 and higher information using an ethernet type supplied by

[ovs-dev] [PATCH 09/16] Add support for copy_ttl_out action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ copy_ttl_out action. And also adds an NX copy_ttl_out action. The implementation does not support copying in the case where the outermost header is IP as it is unclear to me that Open vSwtich has a notion of an inner IP header to copy the TLL from. The hand

[ovs-dev] [PATCH 16/16] datapath: Allow IP actions for MPLS

2013-02-06 Thread Simon Horman
Allow copy_ttl_in to function in the case where: a) The outer header is MPLS; b) The next-outer header is IP and; c) The resulting nw ttl will be different from its existing value In this circumstance a set ipv4 action will be used to adjust the TTL but the dl_type of the match will be ETH_P_MPLS_

[ovs-dev] [PATCH 06/16] dpif-netdev: Inner And Outer Flows

2013-02-06 Thread Simon Horman
This is the user-space datapath component of this change Allow a flow to be visible in two forms, an outer flow and an inner flow. This may occur if the actions allow further decoding of a packet to provide a more fine-grained match. In this case the first-pass coarse-grained match will hit the ou

[ovs-dev] [PATCH 03/16] packet: packet_get_tcp_flags: use flow's innermost dl_type

2013-02-06 Thread Simon Horman
Use the innermost dl_type when decoding L3 and L4 data from a packet. Signed-off-by: Simon Horman --- v2.12 - v2.17 * Use flow_innermost_dl_type helper v2.11 * First post --- lib/packets.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/packets.c b/lib/packets.c

[ovs-dev] [PATCH 10/16] Add support for copy_ttl_in action

2013-02-06 Thread Simon Horman
This adds support for the OpenFlow 1.1+ copy_ttl_in action. And also adds an NX copy_ttl_out action. The implementation does not support copying in the case where the outermost header is IP as it is unclear to me that Open vSwtich has a notion of an inner IP header to copy the TLL from. The imple

[ovs-dev] [PATCH 13/16] datapath: Inner And Outer Flows

2013-02-06 Thread Simon Horman
Allow a flow to be visible in two forms, an outer flow and an inner flow. This may occur if the actions allow further decoding of a packet to provide a more fine-grained match. In this case the first-pass coarse-grained match will hit the outer-flow and the second-pass fined-grained match will hit

[ovs-dev] [PATCH 05/16] ofproto: Allow actions richer matches based on actions

2013-02-06 Thread Simon Horman
If the actions of a flow allow further decoding of L3 and L4 data to provide a richer match then use this richer match. For example: In the case of MPLS, L3 and L4 information may not initially be decoded from the frame as the ethernet type of the frame is an MPLS type and no information is known

[ovs-dev] [PATCH 0/16 v2.18] Basic MPLS actions and matches (continued)

2013-02-06 Thread Simon Horman
Hi, This series implements basic MPLS actions and matches based on work by Ravi K, Leo Alterman and Yamahata-san. The main limitation of this implementation is that it only supports manipulating the outer-most MPLS label. It builds on the MPLS support present in master, extending the user-space