From: Ansis Atteka <aatteka@nicira.com>
Date: Sat, 7 Apr 2012 00:35:12 +0000 (-0700)
Subject: datapath: Do not send notification if ovs_vport_set_options() failed
X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=c59ae2ea5bc31a3620c0b2105f59442013e72ad7;p=sliver-openvswitch.git

datapath: Do not send notification if ovs_vport_set_options() failed

There is no need to send a notification if ovs_vport_set_options() failed
and ovs_vport_cmd_set() did not change anything.

Issue#10285

Acked-by: Jesse Gross <jesse@nicira.com>
Signed-off-by: Ansis Atteka <aatteka@nicira.com>
---

diff --git a/datapath/datapath.c b/datapath/datapath.c
index bb9696735..981be4f69 100644
--- a/datapath/datapath.c
+++ b/datapath/datapath.c
@@ -1876,6 +1876,8 @@ static int ovs_vport_cmd_set(struct sk_buff *skb, struct genl_info *info)
 		err = ovs_vport_set_options(vport, a[OVS_VPORT_ATTR_OPTIONS]);
 	if (!err)
 		err = change_vport(vport, a);
+	else
+		goto exit_unlock;
 	if (!err && a[OVS_VPORT_ATTR_UPCALL_PID])
 		vport->upcall_pid = nla_get_u32(a[OVS_VPORT_ATTR_UPCALL_PID]);