Saurabh Shah | 28 Jul 02:31 2014

[PATCH 0/1] OVS datapath support (kernel only) for HyperV.

As per the discussion on the mailing list, I am including just the kernel-only
changes for HyperV.

Some comments:

* The patch should apply cleanly on master & should not cause any regression.
* The patch is based on "[PATCH v3 0/3] Support for OVS datapath on Windows
  platform." (which i posted a few minutes back)
* The kernel does not include the Netlink integration yet.
* From our experience, this has been a relatively stable kernel extension with
  no known BSOD issues.
* Basic ping test works.

Saurabh Shah (1):
  datapath-windows: Kernel module for HyperV.

 AUTHORS                                       |    3 +
 BUILD.Windows                                 |   96 --
 CodingStyle                                   |    4 +-
 INSTALL.Windows                               |  244 ++++
 Makefile.am                                   |    6 +-
 datapath-windows/CodingStyle                  |  139 ++
 datapath-windows/DESIGN                       |  371 ++++++
 datapath-windows/Package/package.VcxProj      |   95 ++
 datapath-windows/Package/package.VcxProj.user |   15 +
 datapath-windows/automake.mk                  |   56 +
 datapath-windows/extensions.sln               |   49 +
 datapath-windows/include/OvsNetlink.h         |  174 +++
 datapath-windows/include/OvsPub.h             |  498 ++++++++
 datapath-windows/misc/install.cmd             |    4 +
(Continue reading)

Saurabh Shah | 28 Jul 02:26 2014

[PATCH] OVS datapath support (kernel only) for HyperV.

As per the discussion on the mailing list, I am including just the kernel-only
changes for HyperV.

Some comments:

* The patch should apply cleanly on master & should not cause any regression.
* The patch is based on "[PATCH v3 0/3] Support for OVS datapath on Windows
  platform." (which i posted a few minutes back)
* The kernel does not include the Netlink integration yet.
* From our experience, this has been a relatively stable kernel extension with
  no known BSOD issues.
* Basic ping test works.

Saurabh Shah (1):
  datapath-windows: Kernel module for HyperV.

 AUTHORS                                       |    3 +
 BUILD.Windows                                 |   96 --
 CodingStyle                                   |    4 +-
 INSTALL.Windows                               |  244 ++++
 Makefile.am                                   |    6 +-
 datapath-windows/CodingStyle                  |  139 ++
 datapath-windows/DESIGN                       |  371 ++++++
 datapath-windows/Package/package.VcxProj      |   95 ++
 datapath-windows/Package/package.VcxProj.user |   15 +
 datapath-windows/automake.mk                  |   56 +
 datapath-windows/extensions.sln               |   49 +
 datapath-windows/include/OvsNetlink.h         |  174 +++
 datapath-windows/include/OvsPub.h             |  498 ++++++++
 datapath-windows/misc/install.cmd             |    4 +
(Continue reading)

\y00206114 | 28 Jul 09:21 2014

[PATCH] fix the obviously memory leak

From: yinpeijun <yinpeijun@...>

fix the the obviously memory leak in ovsdb-server.c and stream-ssl.c find by the tool of coverity.

Signed-off-by: yinpeijun <yinpeijun@...>
---
 lib/stream-ssl.c     | 1 +
 ovsdb/ovsdb-server.c | 1 +
 2 files changed, 2 insertions(+)

diff --git a/lib/stream-ssl.c b/lib/stream-ssl.c
index 9a214be..937134f 100644
--- a/lib/stream-ssl.c
+++ b/lib/stream-ssl.c
 <at>  <at>  -1213,6 +1213,7  <at>  <at>  read_cert_file(const char *file_name, X509 ***certs, size_t *n_certs)
             free(*certs);
             *certs = NULL;
             *n_certs = 0;
+            fclose(file);
             return EIO;
         }

diff --git a/ovsdb/ovsdb-server.c b/ovsdb/ovsdb-server.c
index a85a672..d85c4e1 100644
--- a/ovsdb/ovsdb-server.c
+++ b/ovsdb/ovsdb-server.c
 <at>  <at>  -519,6 +519,7  <at>  <at>  query_db_string(const struct shash *all_dbs, const char *name,
                                         &db, &table, &column);
         if (retval) {
             ds_put_format(errors, "%s\n", retval);
(Continue reading)

Saurabh Shah | 28 Jul 01:53 2014

[PATCH v3 0/3] Support for OVS datapath on Windows platform.

This patch series adds OpenvSwitch datapath support for Windows platform. The
kernel switch extension has support for bridged back forwarding & tunneling
over VXLAN.

The patch series is based on top of c450371 ("datapath: Initialize OVS_CB in
ovs_vport_receive()")

V3:
Posting the series for sake of completeness. As per the mailing list discussion,
I am going to rip out the userspace changes & will post the only kernel
changes in a different patchset.

This version includes a couple of fixes:
    01. Release Build can be installed and tested now.
    02. Fix to work around network adapters that fail UDP checksum if the
        checksum value is zero.

V2:
Here are some of the major things that are addressed by this v2 patch:
    01. Complete rewrite of the base code, so there is no dependency on
        MS-LPL license any more.
    02. The following crash-report by Cloudbase has been fixed -
        http://paste.openstack.org/show/84911/.

Saurabh Shah (3):
  odp-util: Add utility function, odp_flow_key_to_flow_verbose.
  dpif-windows: Implement datapath interface for windows.
  datapath-windows: Implement the virtual switch forwarding extension.

 AUTHORS                                       |    3 +
(Continue reading)

ben | 28 Jul 03:59 2014
Picon

Returned mail: see transcript for details

The message was not delivered due to the following reason(s):

Your message could not be delivered because the destination computer was
unreachable within the allowed queue period. The amount of time
a message is queued before it is returned depends on local configura-
tion parameters.

Most likely there is a network problem that prevented delivery, but
it is also possible that the computer is turned off, or does not
have a mail system running right now.

Your message could not be delivered within 5 days:
Mail server 38.55.199.92 is not responding.

The following recipients did not receive this message:
<dev@...>

Please reply to postmaster@...
if you feel this message to be in error.

Alex Wang | 28 Jul 01:49 2014

[PATCH] ofproto-dpif-upcall: Suppress sparse warning.

Signed-off-by: Alex Wang <alexw@...>
---
 ofproto/ofproto-dpif-upcall.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ofproto/ofproto-dpif-upcall.c b/ofproto/ofproto-dpif-upcall.c
index f00c17f..654fbd3 100644
--- a/ofproto/ofproto-dpif-upcall.c
+++ b/ofproto/ofproto-dpif-upcall.c
 <at>  <at>  -757,7 +757,7  <at>  <at>  upcall_init(struct upcall *upcall, struct flow *flow, struct ofpbuf *packet,
     xlate_actions(&xin, &upcall->xout);
 }

-void
+static void
 free_upcall(struct upcall *upcall)
 {
     xlate_out_uninit(&upcall->xout);
 <at>  <at>  -845,7 +845,7  <at>  <at>  read_upcalls(struct handler *handler,
     return n_upcalls;
 }

-int
+static int
 convert_upcall(struct udpif *udpif, struct upcall *upcall)
 {
     struct dpif_upcall *dupcall = &upcall->dpif_upcall;
--

-- 
1.7.9.5

(Continue reading)

Fabian Morision | 28 Jul 00:23 2014
Picon

Re: Very Urgent............

--

-- 

Greetings from gulf region

Thanks for the e-mail. I am very interested on funding lucrative business
partnership with you acting as the manager and sole controller of the
investment while i remain a silent investor for a period of ten yrs ,
though I am only looking at investment opportunities within the range you
specified for a start. You can reply me here (fmorision@...)

Let me know your thought asap.

Regards

Financial Consultant

Mr.Fabian Morision
Pravin B Shelar | 27 Jul 20:55 2014

[PATCH v2] datapath: Use currect rcu API in exact match flow lookup function.

Exact match flow lookup is always done under ovs lock. So use
ovsl_dereference() API for rcu access.

Signed-off-by: Pravin B Shelar <pshelar@...>
---
 datapath/flow_table.c | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/datapath/flow_table.c b/datapath/flow_table.c
index 21f67bf..cfd5a84 100644
--- a/datapath/flow_table.c
+++ b/datapath/flow_table.c
 <at>  <at>  -666,23 +666,20  <at>  <at>  struct sw_flow *ovs_flow_tbl_lookup(struct flow_table *tbl,
 struct sw_flow *ovs_flow_tbl_lookup_exact(struct flow_table *tbl,
 					  struct sw_flow_match *match)
 {
-	struct table_instance *ti = rcu_dereference_ovsl(tbl->ti);
-	struct mask_array *ma = rcu_dereference_ovsl(tbl->mask_array);
-	struct sw_flow *flow;
-	u32 __always_unused n_mask_hit;
+	struct mask_array *ma = ovsl_dereference(tbl->mask_array);
 	int i;

 	/* Always called under ovs-mutex. */
 	for (i = 0; i < ma->count; i++) {
+		struct table_instance *ti = ovsl_dereference(tbl->ti);
+		u32 __always_unused n_mask_hit;
 		struct sw_flow_mask *mask;
+		struct sw_flow *flow;

(Continue reading)

Jarno Rajahalme | 27 Jul 19:45 2014

[PATCH 0/6] Native atomics support for x86_64 on GCC.

Our supported XenServer build environments lack proper atomic support,
which makes recent OVS techiques (ovs-rcu, cmap) painfully slow.  This
series enhances OVS atomic support to address this issue.
Corresponding 32-bit support is still to be done.

Jarno Rajahalme (6):
  lib/ovs-atomic: Add atomic_uint64_t and atomic_int64_t.
  lib/ovs-atomic: Elaborate memory_order documentation.
  lib/ovs-atomic: Require memory_order be constant.
  lib/ovs-atomic-gcc4+: Use 'volatile' to enforce memory access.
  tests/test-atomic: Cover more of the atomic API.
  lib/ovs-atomic: Native support for x86_64 with GCC.

 lib/automake.mk         |    1 +
 lib/cmap.c              |   18 ++-
 lib/ovs-atomic-gcc4+.h  |    4 +-
 lib/ovs-atomic-x86_64.h |  359 +++++++++++++++++++++++++++++++++++++++++++++++
 lib/ovs-atomic.h        |   56 +++++++-
 tests/test-atomic.c     |  260 ++++++++++++++++++++++++++++++++++
 6 files changed, 683 insertions(+), 15 deletions(-)
 create mode 100644 lib/ovs-atomic-x86_64.h

--

-- 
1.7.10.4

Himangi Saraogi | 27 Jul 09:07 2014
Picon

[PATCH] openvswitch: Use IS_ERR_OR_NULL

This patch introduces the use of the macro IS_ERR_OR_NULL in place of
tests for NULL and IS_ERR.

The following Coccinelle semantic patch was used for making the change:

 <at>  <at> 
expression e;
 <at>  <at> 

- e == NULL || IS_ERR(e)
+ IS_ERR_OR_NULL(e)
 || ...

Signed-off-by: Himangi Saraogi <himangi774@...>
Acked-by: Julia Lawall <julia.lawall@...>
---
 net/openvswitch/datapath.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c
index 20f59b6..e3b3c21 100644
--- a/net/openvswitch/datapath.c
+++ b/net/openvswitch/datapath.c
 <at>  <at>  -780,7 +780,7  <at>  <at>  static struct sk_buff *ovs_flow_cmd_build_info(const struct sw_flow *flow,

 	skb = ovs_flow_cmd_alloc_info(ovsl_dereference(flow->sf_acts), info,
 				      always);
-	if (!skb || IS_ERR(skb))
+	if (IS_ERR_OR_NULL(skb))
 		return skb;
(Continue reading)

Kmindg | 27 Jul 07:11 2014
Picon

[PATCH] match: Fix match_set_vlan_vid when vid is OFPVID12_NONE

When vid is OFPVID12_NONE, we should match only packets without vlan
tag. Before this commit we set vlan_tci to 0x0000/0x1fff which is fine
because it's only match packets without vlan tag too. But if we add flow
using:
    ovs-ofctl -O OpenFlow10 add-flow br0 dl_vlan=0xffff,actions=drop
    ovs-ofctl -O OpenFlow13 add-flow br0 dl_vlan=0xffff,actions=drop
, we get two flows:
    ovs-ofctl -O OpenFlow10 dump-flows br0
    cookie=0x0, duration=88.227s, table=0, n_packets=0, n_bytes=0,
    idle_age=88, vlan_tci=0x0000 actions=drop
    cookie=0x0, duration=67.503s, table=0, n_packets=0, n_bytes=0,
    idle_age=67, vlan_tci=0x0000/0x1fff actions=drop

    ovs-ofctl -O OpenFlow13 dump-flows br0
    cookie=0x0, duration=36.657s, table=0, n_packets=0, n_bytes=0,
    vlan_tci=0x0000/0x1fff actions=drop
    cookie=0x0, duration=15.933s, table=0, n_packets=0, n_bytes=0,
    vlan_tci=0x0000/0x1fff actions=drop
---
 lib/match.c        | 8 +++++++-
 tests/ofp-print.at | 6 +++---
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/lib/match.c b/lib/match.c
index 58fa0e4..d83288a 100644
--- a/lib/match.c
+++ b/lib/match.c
 <at>  <at>  -445,7 +445,13  <at>  <at>  match_set_dl_vlan(struct match *match, ovs_be16 dl_vlan)
 void
 match_set_vlan_vid(struct match *match, ovs_be16 vid)
(Continue reading)


Gmane