diff options
Diffstat (limited to 'net/openvswitch/vport-vxlan.c')
-rw-r--r-- | net/openvswitch/vport-vxlan.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/net/openvswitch/vport-vxlan.c b/net/openvswitch/vport-vxlan.c index 5eb7694348b5..7eb955e453e6 100644 --- a/net/openvswitch/vport-vxlan.c +++ b/net/openvswitch/vport-vxlan.c | |||
@@ -130,7 +130,14 @@ static struct vport *vxlan_tnl_create(const struct vport_parms *parms) | |||
130 | return ERR_CAST(dev); | 130 | return ERR_CAST(dev); |
131 | } | 131 | } |
132 | 132 | ||
133 | dev_change_flags(dev, dev->flags | IFF_UP); | 133 | err = dev_change_flags(dev, dev->flags | IFF_UP); |
134 | if (err < 0) { | ||
135 | rtnl_delete_link(dev); | ||
136 | rtnl_unlock(); | ||
137 | ovs_vport_free(vport); | ||
138 | goto error; | ||
139 | } | ||
140 | |||
134 | rtnl_unlock(); | 141 | rtnl_unlock(); |
135 | return vport; | 142 | return vport; |
136 | error: | 143 | error: |