openvswitch: Do not send notification if ovs_vport_set_options() failed
authorAnsis Atteka <aatteka@nicira.com>
Mon, 9 Apr 2012 19:12:12 +0000 (12:12 -0700)
committerJesse Gross <jesse@nicira.com>
Mon, 9 Apr 2012 19:18:08 +0000 (12:18 -0700)
There is no need to send a notification if ovs_vport_set_options() failed
and ovs_vport_cmd_set() did not change anything.

Signed-off-by: Ansis Atteka <aatteka@nicira.com>
Signed-off-by: Jesse Gross <jesse@nicira.com>
net/openvswitch/datapath.c

index e44e631..4813d95 100644 (file)
@@ -1635,7 +1635,9 @@ static int ovs_vport_cmd_set(struct sk_buff *skb, struct genl_info *info)
 
        if (!err && a[OVS_VPORT_ATTR_OPTIONS])
                err = ovs_vport_set_options(vport, a[OVS_VPORT_ATTR_OPTIONS]);
-       if (!err && a[OVS_VPORT_ATTR_UPCALL_PID])
+       if (err)
+               goto exit_unlock;
+       if (a[OVS_VPORT_ATTR_UPCALL_PID])
                vport->upcall_pid = nla_get_u32(a[OVS_VPORT_ATTR_UPCALL_PID]);
 
        reply = ovs_vport_cmd_build_info(vport, info->snd_pid, info->snd_seq,