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: |
