[ovs-git] Open vSwitch: tunnel: Fix bug where misconfiguration persists. (master)

dev at openvswitch.org dev at openvswitch.org
Wed May 7 22:04:08 UTC 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, master has been updated
       via  780f7a2ed0e37f3b4f8c5a313b719e2dce48e617 (commit)
       via  053acb81bc48dcf87d45aa4687a1ec421fbd3581 (commit)
      from  2339e869b0bed2202d9632eac82368be27ff041a (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 780f7a2ed0e37f3b4f8c5a313b719e2dce48e617
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=780f7a2ed0e37f3b4f8c5a313b719e2dce48e617
Author: Joe Stringer <joestringer at nicira.com>
		
tunnel: Fix bug where misconfiguration persists.
		
Previously, misconfiguring a tunnel port to use the exact same settings
would cause the corresponding netdev to never be destroyed. When
attempting to re-use the port as a different type, this would fail and
result in a discrepancy between reported port type and actual netdev in
use.

An example configuration that would previously give unexpected behaviour:

ovs-vsctl add-port br0 p0 -- set int p0 type=gre options:remote_ip=1.2.3.4
ovs-vsctl add-port br0 p1 -- set int p1 type=internal
ovs-vsctl set int p1 type=gre options:remote_ip=1.2.3.4
ovs-vsctl set int p1 type=internal

The final command would report in the ovs-vswitchd logs that it is
attempting to configure the port with the same gre settings as p0,
despite the command specifying the type as internal. Even after
deleting and re-adding the port, the message would reappear.

This patch fixes the bug by dereferencing the netdev in the failure
case of tnl_port_add__(), and ensures that the tnl_port structure is
freed in that case as well.

Bug #1198386.

Signed-off-by: Joe Stringer <joestringer at nicira.com>
Acked-by: Ryan Wilson <wryan at vmware.com>
Acked-by: Alex Wang <alexw at nicira.com>


commit 053acb81bc48dcf87d45aa4687a1ec421fbd3581
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=053acb81bc48dcf87d45aa4687a1ec421fbd3581
Author: Ethan Jackson <ethan at nicira.com>
		
netdev: Allow netdev_change_seq_changed() to accept const pointers.
		
This fixes the following warning in the DPDK code.

../lib/netdev-dpdk.c:790:31: error: passing 'const struct netdev *' to
parameter of type 'struct netdev *' discards qualifiers

Signed-off-by: Ethan Jackson <ethan at nicira.com>
Acked-by: Ben Pfaff <blp at nicira.com>


-----------------------------------------------------------------------

Summary of changes:
 lib/netdev-provider.h          |    3 ++-
 ofproto/tunnel.c               |    3 ++-
 tests/interface-reconfigure.at |   17 +++++++++++++++++
 3 files changed, 21 insertions(+), 2 deletions(-)


hooks/post-receive
-- 
Open vSwitch



More information about the git mailing list