Re: [ovs-dev] [PATCH ovn 1/3] ovn: Enforce unique tags for container interfaces.

2015-04-07 Thread Thomas Graf
On 04/07/15 at 10:20am, Russell Bryant wrote: > IIRC, the proposal was actually quite explicit that the tag is a VLAN > ID. It's not a hidden implementation detail because something (not OVN) > has to set up ovs inside the VM with all of the containers attached and > have it tag traffic from each

Re: [ovs-dev] [PATCH ovn 1/3] ovn: Enforce unique tags for container interfaces.

2015-04-07 Thread Thomas Graf
On 04/07/15 at 10:49am, Jesse Gross wrote: > On Tue, Apr 7, 2015 at 8:29 AM, Thomas Graf wrote: > > I remember this discussion. One alternative that comes to mind is to > > simply push a Geneve header in front of it. It would provide a lot > > more flexibility down the road

Re: [ovs-dev] [PATCH 2/3] ovs-dev: Hint that vport modules may need to be loaded manually

2015-04-07 Thread Thomas Graf
On 04/07/15 at 02:47pm, Flavio Leitner wrote: > On Tue, 7 Apr 2015 12:43:42 +0200 > Thomas Graf wrote: > > > In case the openvswitch.ko is loaded manually without dependencies > > built, the vport modules need to be loaded manually as well. > > >

Re: [ovs-dev] [PATCH ovn 1/3] ovn: Enforce unique tags for container interfaces.

2015-04-07 Thread Thomas Graf
On 04/07/15 at 11:34am, Jesse Gross wrote: > I just meant the software versions of offloading, not that we would > need actual hardware support for this. We'd want to make sure that > GSO, virtio, etc. support whatever we do in order to ensure that we > can efficiently communicate between the host

Re: [ovs-dev] [PATCH RFC 1/1] travis: fix errors

2015-04-13 Thread Thomas Graf
On 04/08/15 at 11:30pm, Mark Kavanagh wrote: > Fix two issues observed in travis scripts: > - prepare.sh: add '-E' flag to ensure user environmental variables > (for example, URL of the proxy server) are passed to 'sudo' > - build.sh: add quotes around compiler variable to fix 'unary > operator

Re: [ovs-dev] OpenvSwitch on kernel 3.18.x

2015-04-20 Thread Thomas Graf
On 04/20/15 at 11:25am, Tuan Nguyen wrote: > Hi Ben, > > I tried with newest openvswitch in github ( > https://github.com/openvswitch/ovs) with OpenWrt version in trunk. > When kernel booting, it shows: > openvswitch: exports duplicate symbol setup_udp_tunnel_sock (owned > by udp_tunnel)

Re: [ovs-dev] [RFC 1/2] datapath: Fix unexported public functions in linux/compat/linux/.

2015-04-20 Thread Thomas Graf
On 04/19/15 at 10:15pm, Alex Wang wrote: > With the latest change of separating vports into their own modules, > it is necessary to export all public functions in linux/compat/linux/. > This will prevent the linker error when vport modules use those > functions in the future. e.g., the to be merged

[ovs-dev] [PATCH] datapath: Provide alternate name for setup_udp_tunnel_sock()

2015-04-20 Thread Thomas Graf
On 04/20/15 at 10:16am, Thomas Graf wrote: > On 04/20/15 at 11:25am, Tuan Nguyen wrote: > > Hi Ben, > > > > I tried with newest openvswitch in github ( > > https://github.com/openvswitch/ovs) with OpenWrt version in trunk. > > When kernel booting, it shows:

Re: [ovs-dev] kernel oops while doing OVN testing

2015-04-20 Thread Thomas Graf
On 04/17/15 at 01:56pm, Russell Bryant wrote: > This is the openvswitch module that came with the following Fedora > kernel: 3.19.1-201.fc21.x86_64 > > I can easily reproduce this. It happens when running devstack multiple > times to stand up OpenStack + OVS + OVN + OpenStack Neutron OVN > integr

Re: [ovs-dev] [RFC 1/2] datapath: Fix unexported public functions in linux/compat/linux/.

2015-04-20 Thread Thomas Graf
On 04/20/15 at 12:28pm, Alex Wang wrote: > Thx a lot for the comments~ > > I think here are my todos: > 1. prefix all public functions in the compat/include with rpl_ + and add > checks > to make sure. > 2. export all rpl_* symbols + add check to make sure all rpl_* are exported. My concerns

Re: [ovs-dev] [PATCH] datapath: Provide alternate name for setup_udp_tunnel_sock()

2015-04-20 Thread Thomas Graf
On 04/20/15 at 06:33pm, Tuan Nguyen wrote: > Hi Thomas Graf, > > Thanks for your help, I tried this patch and got a same bug with functions: > udp_tunnel_xmit_skb, udp_tunnel_sock_release > . > I tried to fix like your patch and all work well now. Thanks for testing! It looks

Re: [ovs-dev] [PATCH 0/3] Improve vport module handling

2015-04-20 Thread Thomas Graf
On 04/20/15 at 01:13pm, Ben Pfaff wrote: > On Tue, Apr 07, 2015 at 12:43:40PM +0200, Thomas Graf wrote: > > Thomas Graf (3): > > ovs-ctl: Unload & reload vport modules on force-reload-kmod > > ovs-dev: Hint that vport modules may need to be loaded manually > &g

[ovs-dev] [PATCH 0/4 v2] Improve vport module handling

2015-04-21 Thread Thomas Graf
v2: - Addressed Flavio's feedback: - Only insmod vports previously unloaded - Install vports in ovs-dev modinst Thomas Graf (4): ovs-ctl: Unload & reload vport modules on force-reload-kmod ovs-dev: Hint that vport modules may need to be loaded manually NEWS: Leave a com

[ovs-dev] [PATCH 1/4] ovs-ctl: Unload & reload vport modules on force-reload-kmod

2015-04-21 Thread Thomas Graf
reported though. Reported-by: Pravin Shelar Signed-off-by: Thomas Graf --- utilities/ovs-ctl.in | 24 ++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/utilities/ovs-ctl.in b/utilities/ovs-ctl.in index 6d2e938..97716e9 100755 --- a/utilities/ovs-ctl.in +++ b

[ovs-dev] [PATCH 2/4] ovs-dev: Hint that vport modules may need to be loaded manually

2015-04-21 Thread Thomas Graf
In case the openvswitch.ko is loaded manually without dependencies built, the vport modules need to be loaded manually as well. Signed-off-by: Thomas Graf --- utilities/ovs-dev.py | 5 + 1 file changed, 5 insertions(+) diff --git a/utilities/ovs-dev.py b/utilities/ovs-dev.py index 9467df5

[ovs-dev] [PATCH 3/4] NEWS: Leave a comment that vports are now separate kernel modules

2015-04-21 Thread Thomas Graf
Signed-off-by: Thomas Graf --- NEWS | 3 +++ 1 file changed, 3 insertions(+) diff --git a/NEWS b/NEWS index 87460a7..a78e79c 100644 --- a/NEWS +++ b/NEWS @@ -77,6 +77,9 @@ Post-v2.3.0 numbers. OpenFlow is 6653 and OVSDB is 6640. - Support for DPDK vHost. - Support for outer UDP

[ovs-dev] [PATCH 4/4] ovs-dev: Load all available vport modules on modinst

2015-04-21 Thread Thomas Graf
Automatically load all vport modules upon 'modinst' in case they are not properly installed and thus not autoloaded. Suggested-by: Flavio Leitner Signed-off-by: Thomas Graf --- utilities/ovs-dev.py | 1 + 1 file changed, 1 insertion(+) diff --git a/utilities/ovs-dev.py b/utilities/

[ovs-dev] Networking microconference at LPC15 in Seattle (Aug 19-21)

2015-04-21 Thread Thomas Graf
Hi, Tom and myself will be running another iteration of a networking focused microconference [0] at LPC, Aug 19-21 in Seattle. Given that a bunch of us will be in Seattle anyway we might as well have a general networking session and spend some time together. This year's focus is on: IPv6, Network

Re: [ovs-dev] [PATCH 0/4 v2] Improve vport module handling

2015-04-22 Thread Thomas Graf
On 04/21/15 at 11:42pm, Flavio Leitner wrote: > On Tue, 21 Apr 2015 16:56:31 +0200 > Thomas Graf wrote: > > > v2: > > - Addressed Flavio's feedback: > >- Only insmod vports previously unloaded > >- Install vports in ovs-dev modinst > >

Re: [ovs-dev] [PATCH V2] ovs-ctl: Remove used-by modules of openvswitch during force-relaod-kmod.

2015-04-22 Thread Thomas Graf
On 04/21/15 at 08:48pm, Alex Wang wrote: > > > > and how do you restore them later? > > This looks like a dup of: > > http://openvswitch.org/pipermail/dev/2015-April/054378.html > > > > > Thx for the reminder, this is a duplicate... not aware of the patch~ > > For the restoration, when ovs is rest

Re: [ovs-dev] [PATCH] vlog.c: Avoid duplicating log message in rsyslog if enabling syslog-target

2015-04-22 Thread Thomas Graf
On 04/22/15 at 07:45am, Ben Pfaff wrote: > Another suggestion I received off-list was to change the rsyslog > daemon's configuration to not to write its output locally. Or in your systemd-journald which would allow for setup as well. > > On Tue, Apr 21, 2015 at 09:33:45PM +, Michael Hu (NSBU

Re: [ovs-dev] Neutron Container integration.

2015-04-22 Thread Thomas Graf
On 04/22/15 at 10:56am, Russell Bryant wrote: > Cool stuff. It looks like it will help. To be clear though, what I > think we need is an HTTP callback. Neutron needs to be able to notify > an arbitrary system instead of specifically Nova that a port is ready. > > Another way to go about this wo

[ovs-dev] [net-next RFC 10/14] openvswitch: Abstract vport name through ovs_vport_name()

2015-06-01 Thread Thomas Graf
This allows to get rid of the get_name() vport ops later on. Signed-off-by: Thomas Graf --- net/openvswitch/datapath.c | 4 ++-- net/openvswitch/vport-internal_dev.c | 1 - net/openvswitch/vport-netdev.c | 6 -- net/openvswitch/vport-netdev.h | 1 - net/openvswitch

[ovs-dev] [net-next RFC 04/14] route: Extend flow representation with tunnel key

2015-06-01 Thread Thomas Graf
Add a new flowi_tunnel structure which is a subset of ip_tunnel_key to allow routes to match on tunnel metadata. For now, the tunnel id is added to flowi_tunnel which allows for routes to be bound to specific virtual tunnels. Signed-off-by: Thomas Graf --- include/net/flow.h | 7

[ovs-dev] [net-next RFC 02/14] ip_tunnel: support per packet tunnel metadata

2015-06-01 Thread Thomas Graf
, it will only have to allocate the metadata once and can simply increment the reference counter for each packet that uses that instruction set. Signed-off-by: Thomas Graf --- include/linux/skbuff.h| 1 + include/net/ip_tunnels.h | 45 + net/core

[ovs-dev] [net-next RFC 05/14] route: Per route tunnel metadata with RTA_TUNNEL

2015-06-01 Thread Thomas Graf
-off-by: Thomas Graf --- include/net/ip_fib.h | 3 +++ include/net/ip_tunnels.h | 1 - include/net/route.h| 10 include/uapi/linux/rtnetlink.h | 16 net/ipv4/fib_frontend.c| 57 ++ net/ipv4

[ovs-dev] [net-next RFC 12/14] vxlan: remove indirect call to vxlan_rcv() and vni member

2015-06-01 Thread Thomas Graf
With the removal of the special treating of OVS VXLAN vports, the indirect call to vxlan_rcv() can be avoided and the VNI member in vxlan_metadata can be removed. Signed-off-by: Thomas Graf --- drivers/net/vxlan.c | 225 +--- include/net/vxlan.h

[ovs-dev] [net-next RFC 06/14] fib: Add fib rule match on tunnel id

2015-06-01 Thread Thomas Graf
This add the ability to select a routing table based on the tunnel id which allows to maintain separate routing tables for each virtual tunnel network. ip rule add from all tunnel-id 100 lookup 100 ip rule add from all tunnel-id 200 lookup 200 Signed-off-by: Thomas Graf --- include/net

[ovs-dev] [net-next RFC 03/14] vxlan: Flow based tunneling

2015-06-01 Thread Thomas Graf
encapsulation for a large number of tunnel endpoints and tunnel ids through a single net_device which improves the scalability of current VXLAN tunnels. Signed-off-by: Thomas Graf Signed-off-by: Pravin B Shelar --- drivers/net/vxlan.c | 147 --- include

[ovs-dev] [net-next RFC 07/14] vxlan: Factor out device configuration

2015-06-01 Thread Thomas Graf
This factors out the device configuration out of the RTNL newlink API which allows for in-kernel creation of VXLAN net_devices. Signed-off-by: Thomas Graf --- drivers/net/vxlan.c | 332 include/net/vxlan.h | 59 ++ 2 files changed

[ovs-dev] [net-next RFC 14/14] arp: Associate ARP requests with tunnel info

2015-06-01 Thread Thomas Graf
Since ARP performs its own route lookup call, eventually returned tunnel metadata must be attached manually. Signed-off-by: Thomas Graf --- net/ipv4/arp.c | 8 1 file changed, 8 insertions(+) diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c index 933a928..6cf0502 100644 --- a/net/ipv4

[ovs-dev] [net-next RFC 00/14] Convert OVS tunnel vports to use regular net_devices

2015-06-01 Thread Thomas Graf
tunnel endpoints and virtual networks using a single tunnel net_device. TODO: - Geneve support - IPv6 support - Benchmarks Pravin Shelar (1): openvswitch: Use regular GRE net_device instead of vport Thomas Graf (13): ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic ip_tunnel

[ovs-dev] [net-next RFC 11/14] openvswitch: Use regular VXLAN net_device device

2015-06-01 Thread Thomas Graf
(), vxlan_xmit_skb() since they are no longer needed. Signed-off-by: Thomas Graf Signed-off-by: Pravin B Shelar --- drivers/net/vxlan.c| 23 +-- include/net/vxlan.h| 14 +- net/openvswitch/Kconfig| 12 -- net/openvswitch/Makefile | 1 - net/openvswitch/flow_netlink.c

[ovs-dev] [net-next RFC 08/14] openvswitch: Allocate & attach ip_tunnel_info for tunnel set action

2015-06-01 Thread Thomas Graf
. Signed-off-by: Thomas Graf Signed-off-by: Pravin B Shelar --- net/openvswitch/actions.c | 8 +- net/openvswitch/datapath.c | 8 +++--- net/openvswitch/flow.h | 5 net/openvswitch/flow_netlink.c | 59 +- net/openvswitch

[ovs-dev] [net-next RFC 13/14] openvswitch: Use regular GRE net_device instead of vport

2015-06-01 Thread Thomas Graf
From: Pravin Shelar Removes all of the OVS specific GRE code and makes OVS use a GRE net_device . Signed-off-by: Pravin B Shelar --- net/core/dev.c | 5 +- net/ipv4/ip_gre.c | 161 - net/openvswitch/Makefile | 1 - net/openvswitch/vpor

[ovs-dev] [net-next RFC 09/14] openvswitch: Move dev pointer into vport itself

2015-06-01 Thread Thomas Graf
This is the first step in representing all OVS vports as regular struct net_devices. Move the net_device pointer into the vport structure itself to get rid of struct vport_netdev. Signed-off-by: Thomas Graf Signed-off-by: Pravin B Shelar --- net/openvswitch/datapath.c | 7 +-- net

Re: [ovs-dev] [net-next RFC 05/14] route: Per route tunnel metadata with RTA_TUNNEL

2015-06-01 Thread Thomas Graf
On 06/01/15 at 05:51pm, Robert Shearman wrote: > On 01/06/15 15:27, Thomas Graf wrote: > >Introduces a new Netlink attribute RTA_TUNNEL which allows routes > >to set tunnel transmit metadata and specify the tunnel endpoint or > >tunnel id on a per route basis. The route m

Re: [ovs-dev] [net-next RFC 08/14] openvswitch: Allocate & attach ip_tunnel_info for tunnel set action

2015-06-03 Thread Thomas Graf
On 06/03/15 at 05:29pm, Jiri Benc wrote: > On Mon, 1 Jun 2015 16:27:32 +0200, Thomas Graf wrote: > > --- a/net/openvswitch/flow.h > > +++ b/net/openvswitch/flow.h > > @@ -45,6 +45,11 @@ struct sk_buff; > > #define TUN_METADATA_OPTS(flow_key, opt_len) \ > >

[ovs-dev] [PATCH v3] linux: Report supported user features to the kernel

2013-12-19 Thread Thomas Graf
n order to overwrite previously set user features. Signed-off-by: Thomas Graf --- V3: Use OVS_DP_CMD_SET when opening the datapath lib/dpif-linux.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/dpif-linux.c b/lib/dpif-linux.c index f64e55b..482ba77 100644 --- a/lib/dp

Re: [ovs-dev] [GIT net-next] Open vSwitch

2014-01-14 Thread Thomas Graf
On 01/14/2014 02:30 AM, Jesse Gross wrote: And it works. I guess the last one causing the problem. Might be an important factor, I'm using 32 bit Dom0. I think you're probably right. Thomas - can you take a look? We shouldn't be doing any zerocopy in this situation but it looks to me like we d

Re: [ovs-dev] [PATCH net-next] openvswitch: Pad OVS_PACKET_ATTR_PACKET if linear copy was performed

2014-01-14 Thread Thomas Graf
On 01/14/14 at 04:16pm, Thomas Graf wrote: > While the zerocopy method is correctly omitted if user space > does not support unaligned Netlink messages. The attribute is > still not padded correctly as skb_zerocopy() will not ensure > padding and the attribute size is no longer pr

[ovs-dev] [PATCH net-next] openvswitch: Pad OVS_PACKET_ATTR_PACKET if linear copy was performed

2014-01-14 Thread Thomas Graf
. This patch applies appropriate padding if a linear data copy was performed in skb_zerocopy(). Signed-off-by: Thomas Graf --- net/openvswitch/datapath.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c index df46928

[ovs-dev] [PATCH net-next v2] openvswitch: Pad OVS_PACKET_ATTR_PACKET if linear copy was performed

2014-01-14 Thread Thomas Graf
. This patch applies appropriate padding if a linear data copy was performed in skb_zerocopy(). Signed-off-by: Thomas Graf --- v2: initialize padding to 0's net/openvswitch/datapath.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/net/openvswitch/datapath.c

Re: [ovs-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.

2014-01-28 Thread Thomas Graf
On 01/28/2014 02:48 AM, pshe...@nicira.com wrote: From: Pravin B Shelar Following patch adds DPDK netdev-class to userspace datapath. Approach taken in this patch differs from Intel® DPDK vSwitch where DPDK datapath switching is done in saparate process. This patch adds support for DPDK type p

Re: [ovs-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.

2014-01-28 Thread Thomas Graf
On 01/28/2014 03:47 PM, Vincent JARDIN wrote: Hi Pravin, Yes, it is a good integration with http://dpdk.org Few feature questions: - what's about the vNIC supports (toward the guests)? - what's about IPsec support (VxLAN over IPsec for instance)? I would like to extend this question to

Re: [ovs-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.

2014-01-29 Thread Thomas Graf
On 01/28/2014 07:17 PM, Pravin Shelar wrote: Right, version mismatch will not work. API provided by DPDK are not stable, So OVS has to be built for different releases for now. I do not see how we can fix it from OVS side. DPDK needs to standardize API, Actually OVS also needs more API, like DPDK

Re: [ovs-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.

2014-01-29 Thread Thomas Graf
On 01/28/2014 02:48 AM, pshe...@nicira.com wrote: From: Pravin B Shelar Following patch adds DPDK netdev-class to userspace datapath. Approach taken in this patch differs from Intel® DPDK vSwitch where DPDK datapath switching is done in saparate process. This patch adds support for DPDK type p

Re: [ovs-dev] [dpdk-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.

2014-01-29 Thread Thomas Graf
Vincent, On 01/29/2014 11:26 AM, Vincent JARDIN wrote: DPDK's ABIs are not Kernel's ABIs, they are not POSIX, there is no standard. Currently, there is no such plan to have a stable ABI since we need to keep freedom to chase CPU cycles over having a stable ABI. For instance, some applications on

Re: [ovs-dev] [dpdk-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.

2014-01-29 Thread Thomas Graf
On 01/29/2014 05:34 PM, Vincent JARDIN wrote: Thomas, First and easy answer: it is open source, so anyone can recompile. So, what's the issue? I'm talking from a pure distribution perspective here: Requiring to recompile all DPDK based applications to distribute a bugfix or to add support for

Re: [ovs-dev] [dpdk-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.

2014-01-29 Thread Thomas Graf
On 01/29/2014 09:47 PM, François-Frédéric Ozog wrote: In the telecom world, if you fix the underlying framework of an app, you will still have to validate the solution, ie app/framework. In addition, the idea of shared libraries introduces the implied requirement to validate apps against diverse

Re: [ovs-dev] [PATCH] vxlan: Support for receiving "ethernet over VXLAN-gpe" packets.

2014-03-04 Thread Thomas Graf
VXLAN-gpe headers. [1] https://tools.ietf.org/html/draft-quinn-vxlan-gpe-02 Signed-off-by: Pritesh Kothari Looks good. Are you planning to propose this patch to the upstream kernel VXLAN code as well or even a full VXLAN-gpe implementation? Reviewed-by: T

Re: [ovs-dev] [PATCH 3/5] datapath: Allow each vport to have an array of 'port_id's.

2014-03-06 Thread Thomas Graf
Hi Alex, On 02/27/2014 08:44 PM, Alex Wang wrote: diff --git a/datapath/datapath.c b/datapath/datapath.c index f7c3391..de4b97a 100644 --- a/datapath/datapath.c +++ b/datapath/datapath.c @@ -1459,7 +1459,7 @@ static const struct nla_policy vport_policy[OVS_VPORT_ATTR_MAX + 1] = { [OVS_V

Re: [ovs-dev] [PATCH] openvswitch: Orphan frags before sending to userspace via Netlink to avoid guest stall

2014-03-07 Thread Thomas Graf
On 03/07/2014 05:46 AM, Pravin Shelar wrote: But I found bug in datapath user-space queue code. I am not sure how this can work with skb fragments and MMAP-netlink socket. Here is what happens, OVS allocates netlink skb and adds fragments to skb using skb_zero_copy(), then calls genlmsg_unicast()

Re: [ovs-dev] [PATCH] openvswitch: Orphan frags before sending to userspace via Netlink to avoid guest stall

2014-03-07 Thread Thomas Graf
On 02/28/2014 08:16 PM, Zoltan Kiss wrote: The kernel datapath now switched to zerocopy Netlink messages, but that also means that the pages on frags array are sent straight to userspace. If those pages came outside the kernel, we have to swap them out with local copies. Signed-off-by: Zoltan Ki

Re: [ovs-dev] [PATCH] openvswitch: Orphan frags before sending to userspace via Netlink to avoid guest stall

2014-03-07 Thread Thomas Graf
On 03/07/2014 06:28 PM, Pravin Shelar wrote: Problem is mapping SKBTX_DEV_ZEROCOPY pages to userspace. skb_zerocopy is not doing that. Unless I missing something, Current netlink code can not handle skb-frags with zero copy. So we have to copy skb anyways and no need to orphan-frags here. If you

Re: [ovs-dev] [PATCH] openvswitch: Orphan frags before sending to userspace via Netlink to avoid guest stall

2014-03-07 Thread Thomas Graf
On 03/07/2014 06:19 PM, Pravin Shelar wrote: On Fri, Mar 7, 2014 at 7:58 AM, Thomas Graf wrote: On 03/07/2014 05:46 AM, Pravin Shelar wrote: But I found bug in datapath user-space queue code. I am not sure how this can work with skb fragments and MMAP-netlink socket. Here is what happens

[ovs-dev] Linux Plumbers Conference 2014: Network Virtualization (Security)

2014-03-13 Thread Thomas Graf
Hi [Cross posting this to ovs-devel for exposure] We had excellent technical discussions around OVS at LPC13 last year and would love to provide the same forum at this year's LPC again. We have started collecting ideas on possible discussion topics on the following wiki page. Feel free add your

Re: [ovs-dev] [PATCH V3 3/5] datapath: Allow each vport to have an array of 'port_id's.

2014-03-13 Thread Thomas Graf
This looks great already. Some minor stuff. On 03/08/2014 03:04 AM, Alex Wang wrote: @@ -1459,7 +1459,7 @@ static const struct nla_policy vport_policy[OVS_VPORT_ATTR_MAX + 1] = { [OVS_VPORT_ATTR_STATS] = { .len = sizeof(struct ovs_vport_stats) }, [OVS_VPORT_ATTR_PORT_NO] = { .ty

Re: [ovs-dev] [PATCH V3 3/5] datapath: Allow each vport to have an array of 'port_id's.

2014-03-13 Thread Thomas Graf
On 03/13/2014 10:04 PM, Alex Wang wrote: After asking around, there are two solutions listed as follows: 1. Ask user to specify the number of handlers to be power of 2. This way, we can use the bitwise AND for modular operation. 2. Use the reciprocal division. At time of setting the 'upcall_p

Re: [ovs-dev] [PATCH] reciprocal-divide: Downstream the reciprocal_div.{c, h}.

2014-03-17 Thread Thomas Graf
repo. Signed-off-by: Alex Wang Reviewed-by: Thomas Graf ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCH V4 3/5] datapath: Allow each vport to have an array of 'port_id's.

2014-03-19 Thread Thomas Graf
. Signed-off-by: Alex Wang FYI, recent netdev sub thread on the subject of % usage: http://www.spinics.net/lists/netdev/msg275467.html Patch looks good to me now. Acked-by: Thomas Graf Two very minor comments included below just in case you need to respin anyway: +int

Re: [ovs-dev] [PATCH] core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle errors

2014-03-19 Thread Thomas Graf
On 03/19/2014 09:38 PM, Zoltan Kiss wrote: skb_zerocopy can copy elements of the frags array between skbs, but it doesn't orphan them. Also, it doesn't handle errors, so this patch takes care of that as well. Signed-off-by: Zoltan Kiss --- + if (unlikely(skb_orphan_frags(to, GFP_ATOMIC

Re: [ovs-dev] [PATCH v2] core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle errors

2014-03-20 Thread Thomas Graf
On 03/20/2014 01:16 PM, Thomas Graf wrote: On 03/19/2014 10:07 PM, Zoltan Kiss wrote: skb_zerocopy can copy elements of the frags array between skbs, but it doesn't orphan them. Also, it doesn't handle errors, so this patch takes care of that as well. Signed-off-by: Zoltan Kiss

Re: [ovs-dev] [PATCH v2] core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle errors

2014-03-20 Thread Thomas Graf
On 03/19/2014 10:07 PM, Zoltan Kiss wrote: skb_zerocopy can copy elements of the frags array between skbs, but it doesn't orphan them. Also, it doesn't handle errors, so this patch takes care of that as well. Signed-off-by: Zoltan Kiss Acked-by: Thomas Graf --- + if

Re: [ovs-dev] [PATCH v3] core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle errors

2014-03-20 Thread Thomas Graf
On 03/20/2014 05:02 PM, Zoltan Kiss wrote: --- a/net/openvswitch/datapath.c +++ b/net/openvswitch/datapath.c @@ -464,7 +464,9 @@ static int queue_userspace_packet(struct datapath *dp, struct sk_buff *skb, } nla->nla_len = nla_attr_size(skb->len); - skb_zerocopy(user_skb, s

Re: [ovs-dev] [PATCH v4] core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle errors

2014-03-21 Thread Thomas Graf
4: correctly use error path in queue_userspace_packet LGTM now Acked-by: Thomas Graf ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCH V2 01/10] netdev: Extend rx_recv to pass multiple packets.

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:02 PM, Pravin wrote: diff --git a/lib/automake.mk b/lib/automake.mk @@ -1863,7 +1850,7 @@ dp_netdev_port_input(struct dp_netdev *dp, struct ofpbuf *packet, dp_netdev_flow_used(netdev_flow, packet, &key); actions = dp_netdev_flow_get_actions(netdev_flow); -

Re: [ovs-dev] [PATCH V2 02/10] netdev: Send ofpbuf directly to netdev.

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:03 PM, Pravin wrote: DPDK netdev need to access ofpbuf while sending buffer. Following patch changes netdev_send accordingly. Signed-off-by: Pravin B Shelar --- v1-v2: - Fix comments. LGTM Acked-by: Thomas Graf ___ dev mailing

Re: [ovs-dev] [PATCH V2 03/10] dpif-netdev: Add ref-counting for port.

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:03 PM, Pravin wrote: DPDK Poll mode thread need to keep ref to dpif-port. Signed-off-by: Pravin B Shelar Acked-by: Jarno Rajahalme --- v1-v2: Removed extra blank line in port_unref(). LGTM Acked-by: Thomas Graf ___ dev mailing

Re: [ovs-dev] [PATCH V2 01/10] netdev: Extend rx_recv to pass multiple packets.

2014-03-21 Thread Thomas Graf
On 03/21/2014 10:28 PM, Pravin Shelar wrote: I think it is not possible. Why vswitchd would generate such action if the packet is not going somewhere? [...] right, there is memory leak for packet size less than eth-header. unfortunately dp_netdev_port_input() would not know if packet is dele

Re: [ovs-dev] [PATCH V2 04/10] dpif-netdev: Add poll-mode-device thread.

2014-03-21 Thread Thomas Graf
take port_rwlock. So Removed port_rwlock thread sefty checks from fast-path functions. LGTM Acked-by: Thomas Graf ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCH V2 05/10] netdev: Rename netdev_rx to netdev_rxq

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:03 PM, Pravin wrote: Preparation for multi queue netdev IO. There are no functional changes in this patch. Signed-off-by: Pravin B Shelar Acked-by: Thomas Graf ___ dev mailing list dev@openvswitch.org http://openvswitch.org

Re: [ovs-dev] [PATCH V2 06/10] netdev: Add support multiqueue recv.

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:03 PM, Pravin wrote: new netdev type like DPDK can support multi-queue IO. Following patch Adds support for same. Signed-off-by: Pravin B Shelar Straight forward patch Acked-by: Thomas Graf @@ -514,15 +527,16 @@ netdev_parse_name(const char *netdev_name_, char **name

Re: [ovs-dev] [PATCH V2 07/10] ofpbuf: Add OFPBUF_DPDK type.

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:03 PM, Pravin wrote: This will be used by DPDK for zero copy IO. Signed-off-by: Pravin B Shelar --- v1-v2: Added comment. --- lib/ofpbuf.c |7 ++- lib/ofpbuf.h |3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/ofpbuf.c b/lib/ofpbuf.c ind

Re: [ovs-dev] [PATCH V2 09/10] dpif-netdev: Add DPDK netdev.

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:03 PM, Pravin wrote: Some comments below. I'll start experimenting with this as well. + +#define MTU_TO_MAX_LEN(mtu) ((mtu) + ETHER_HDR_LEN + ETHER_CRC_LEN) +#define MBUF_SIZE(mtu) (MTU_TO_MAX_LEN(mtu) + (512) + \ + sizeof(struct rte_mbuf) + R

Re: [ovs-dev] [PATCH V2 09/10] dpif-netdev: Add DPDK netdev.

2014-03-21 Thread Thomas Graf
On 03/22/2014 12:13 AM, Thomas Graf wrote: On 03/21/2014 07:03 PM, Pravin wrote: Some comments below. I'll start experimenting with this as well. Almost forgot: I think none of my feedback should be a blocker to merge this and continue working on it, therefore: Acked-by: Thomas

Re: [ovs-dev] [PATCH V2 10/10] netdev-dpdk: Use multiple core for dpdk IO.

2014-03-21 Thread Thomas Graf
On 03/21/2014 07:03 PM, Pravin wrote: DPDK need to set _lcore_id for using multiple core. Signed-off-by: Pravin B Shelar --- LGTM Acked-by: Thomas Graf ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCH v4 1/7] datapath: Avoid assigning a NULL pointer to flow actions.

2014-03-25 Thread Thomas Graf
LGTM Acked-by: Thomas Graf ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCH v4 2/7] datapath: Clarify locking.

2014-03-25 Thread Thomas Graf
On 03/24/2014 07:56 PM, Jarno Rajahalme wrote: Remove unnecessary locking from functions that are always called with appropriate locking. Signed-off-by: Jarno Rajahalme Acked-by: Thomas Graf ___ dev mailing list dev@openvswitch.org http

Re: [ovs-dev] [PATCH v4 3/7] datapath: Build flow cmd netlink reply only if needed.

2014-03-25 Thread Thomas Graf
looks sane to me. Compatibility is an issue here as genl_notify() has already dropped the unicast reply if NLM_F_ECHO was not present before this patch. Acked-by: Thomas Graf --- datapath/datapath.c | 57 --- 1 file changed, 40 insertions(+), 17

[ovs-dev] [PATCH v2] ovs-vsctl: Improve error reporting

2014-03-27 Thread Thomas Graf
ss). Signed-off-by: Andy Zhou Signed-off-by: Thomas Graf --- V2: Improved error message to indicate error occurs during setup and that additional details can be found in the log. --- tests/ovs-vsctl.at| 8 +++-- utilities/ovs-vsctl.c | 92 ++

Re: [ovs-dev] [PATCH] ovs-vsctl: Improve error reporting

2014-03-27 Thread Thomas Graf
On 03/27/2014 10:04 AM, Andy Zhou wrote: * Thomas: Some of the code and ideas are imported from your 12/11/2012 patch titled "ovs-vsctl: Check "ofport" column after adding a new port", and subsequent mailing list discussions. Please feel free to review, fix and enhance the patch as yo

Re: [ovs-dev] [patch net-next RFC v2 0/6] introduce infrastructure for support of switch chip datapath

2014-03-27 Thread Thomas Graf
On 03/27/14 at 06:27am, Jamal Hadi Salim wrote: > On 03/27/14 03:21, Jiri Pirko wrote: > >Wed, Mar 26, 2014 at 10:44:31PM CET, j...@mojatatu.com wrote: > > >Well, I think there are 2 main models to be considered: > >1. OSV-like model, where everything is flows and that is the OneWay(tm) > >mod

Re: [ovs-dev] [patch net-next RFC v2 4/6] net: introduce switchdev API

2014-03-27 Thread Thomas Graf
On 03/26/14 at 05:31pm, Jiri Pirko wrote: > switchdev API is designed to allow kernel support for various switch > chips. > > It is the responsibility of a driver to create netdevice instances which > represents every port and for the switch master itself. Driver uses > swdev_register and swportde

Re: [ovs-dev] [patch net-next RFC v2 0/6] introduce infrastructure for support of switch chip datapath

2014-03-27 Thread Thomas Graf
On 03/27/14 at 07:17am, Jamal Hadi Salim wrote: > On 03/27/14 07:02, Thomas Graf wrote: > >But wouldn't you want to introduce an additional ndo to > >cover these? > > We could - I just find it distracting at the current thread > of discussion (the openwrt folks for ex

Re: [ovs-dev] [PATCH] ovs-vsctl: Improve error reporting

2014-03-27 Thread Thomas Graf
On 03/27/2014 04:48 PM, Andy Zhou wrote: On Thu, Mar 27, 2014 at 3:36 AM, Thomas Graf wrote: On 03/27/2014 10:04 AM, Andy Zhou wrote: * Thomas: Some of the code and ideas are imported from your 12/11/2012 patch titled "ovs-vsctl: Check "ofport" column after adding a

[ovs-dev] [PATCH v3] ovs-vsctl: Improve error reporting

2014-03-27 Thread Thomas Graf
ss). Signed-off-by: Andy Zhou Signed-off-by: Thomas Graf --- V3: Fixed tests/ovs-vsctl.at to expect improved error message V2: Improved error message to indicate error occurs during setup and that additional details can be found in the log. --- tests/ovs-vsctl.at| 8 +++

Re: [ovs-dev] [patch net-next RFC v2 0/6] introduce infrastructure for support of switch chip datapath

2014-03-27 Thread Thomas Graf
On 03/27/14 at 09:27am, Florian Fainelli wrote: > 2014-03-27 4:02 GMT-07:00 Thomas Graf : > > There is definitely need beyond an ndo that is capable of > > adding flows. You mention routes. Another example would be > > devices capable of offloading iptables & nft rules. &

Re: [ovs-dev] [PATCH v4 2/2] ovs-vsctl: Improve error reporting

2014-03-28 Thread Thomas Graf
failure) or a positive number (on success). Signed-off-by: Andy Zhou Co-authored-by: Thomas Graf Signed-off-by: Thomas Graf Co-authored-by: Ben Pfaff Signed-off-by: Ben Pfaff --- v3->v4: See http://openvswitch.org/pipermail/dev/2014-March/038164.html for changes. LGTM, thanks! While look

Re: [ovs-dev] [PATCH] datapath: Add support for kernel 3.14.

2014-04-08 Thread Thomas Graf
On 04/07/2014 07:54 PM, Pritesh Kothari wrote: diff --git a/datapath/linux/compat/include/linux/etherdevice.h b/datapath/linux/compat/include/linux/etherdevice.h index 556729d..88f8ee3 100644 --- a/datapath/linux/compat/include/linux/etherdevice.h +++ b/datapath/linux/compat/include/linux/etherd

Re: [ovs-dev] [PATCH 1/4] datapath: Move table destroy to dp-rcu callback.

2014-04-08 Thread Thomas Graf
On 04/08/2014 12:00 AM, Pravin wrote: diff --git a/datapath/flow_table.c b/datapath/flow_table.c index 159572b..75c1b82 100644 --- a/datapath/flow_table.c +++ b/datapath/flow_table.c @@ -259,11 +259,11 @@ skip_flows: __table_instance_destroy(ti); } -void ovs_flow_tbl_destroy(st

Re: [ovs-dev] [PATCH v2] datapath: Add support for kernel 3.14.

2014-04-09 Thread Thomas Graf
| 12 ++-- datapath/vport.h |2 +- 13 files changed, 36 insertions(+), 16 deletions(-) create mode 100644 datapath/linux/compat/include/linux/random.h LGTM now Acked-by: Thomas Graf

Re: [ovs-dev] [PATCH 08/10] openvswithch.h: Clarify use of key attributes.

2014-04-09 Thread Thomas Graf
On 04/09/2014 01:38 AM, Jarno Rajahalme wrote: Key attributes relating to actual packet headers are ignored for OVS_PACKET_CMD_EXECUTE as the header key attributes are retrieved from the packet itself. Signed-off-by: Jarno Rajahalme LGTM Acked-by: Thomas Graf

Re: [ovs-dev] [PATCH 09/10] datapath: Allow masks for set actions.

2014-04-09 Thread Thomas Graf
On 04/09/2014 01:38 AM, Jarno Rajahalme wrote: Masked set actions allow more megaflow wildcarding. All other key types than the tunnel key that can be set, can now be set with a mask. It is not clear wether masked set is useful for skb_priority. However, we already use the LSB of pkt_mark for I

Re: [ovs-dev] [PATCH 2/4] datapath: Add flow mask cache.

2014-04-09 Thread Thomas Graf
On 04/08/2014 12:00 AM, Pravin wrote: From: Pravin Shelar On every packet OVS needs to lookup flow-table with every mask. the packet flow-key is first masked with mask in the list and then the masked key is looked up in flow-table. Therefore number of masks can affect packet processing perform

Re: [ovs-dev] [PATCH 2/4] datapath: Add flow mask cache.

2014-04-09 Thread Thomas Graf
On 04/08/2014 12:00 AM, Pravin wrote: +struct sw_flow *ovs_flow_tbl_lookup_stats(struct flow_table *tbl, + const struct sw_flow_key *key, + u32 skb_hash, + u32 *n_mask_hit) +{ +

[ovs-dev] [PATCH] bridge: improve vlan mode related error messages when adding port

2014-04-09 Thread Thomas Graf
Inform about fallback to trunk mode and convert errors to warnings when we are not failing. Signed-off-by: Thomas Graf --- vswitchd/bridge.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c index 24b3602..c6095b2 100644 --- a

Re: [ovs-dev] [PATCH] bridge: improve vlan mode related error messages when adding port

2014-04-09 Thread Thomas Graf
On 04/09/2014 06:57 PM, Ben Pfaff wrote: On Wed, Apr 09, 2014 at 09:52:03AM -0700, Ben Pfaff wrote: On Wed, Apr 09, 2014 at 05:19:17PM +0200, Thomas Graf wrote: Inform about fallback to trunk mode and convert errors to warnings when we are not failing. Signed-off-by: Thomas Graf I'm p

[ovs-dev] [PATCH 1/3] vlog: Provide convenience macros to additionally store log messages in buffer

2014-04-10 Thread Thomas Graf
Signed-off-by: Thomas Graf --- lib/vlog.h | 12 1 file changed, 12 insertions(+) diff --git a/lib/vlog.h b/lib/vlog.h index 0f791af..e5af21d 100644 --- a/lib/vlog.h +++ b/lib/vlog.h @@ -205,6 +205,11 @@ void vlog_rate_limit(const struct vlog_module *, enum vlog_level, #define

[ovs-dev] [PATCH 3/3] ovs-vsctl: Add error column to show command

2014-04-10 Thread Thomas Graf
rsion: "2.1.90" Signed-off-by: Thomas Graf --- NEWS | 2 ++ utilities/ovs-vsctl.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 7925598..ce61d5b 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,8 @@ Post-v2.1.0 configured proper

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