diff mbox

[net] bridge: Fix error path in nbp_vlan_init

Message ID 1488379845-38625-1-git-send-email-yotamg@mellanox.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Yotam Gigi March 1, 2017, 2:50 p.m. UTC
Fix error path order in nbp_vlan_init, so if switchdev_port_attr_set
call failes, the vlan_hash wouldn't be destroyed before inited.

Fixes: efa5356b0d97 ("bridge: per vlan dst_metadata netlink support")
CC: Roopa Prabhu <roopa@cumulusnetworks.com>
Signed-off-by: Yotam Gigi <yotamg@mellanox.com>
---
 net/bridge/br_vlan.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Roopa Prabhu March 1, 2017, 6:25 p.m. UTC | #1
On 3/1/17, 6:50 AM, Yotam Gigi wrote:
> Fix error path order in nbp_vlan_init, so if switchdev_port_attr_set
> call failes, the vlan_hash wouldn't be destroyed before inited.
>
> Fixes: efa5356b0d97 ("bridge: per vlan dst_metadata netlink support")
> CC: Roopa Prabhu <roopa@cumulusnetworks.com>
> Signed-off-by: Yotam Gigi <yotamg@mellanox.com>
> ---
>  
Acked-by: Roopa Prabhu <roopa@cumulusnetworks.com>

Thanks yotam.
Jiri Pirko March 1, 2017, 7:14 p.m. UTC | #2
Wed, Mar 01, 2017 at 03:50:45PM CET, yotamg@mellanox.com wrote:
>Fix error path order in nbp_vlan_init, so if switchdev_port_attr_set
>call failes, the vlan_hash wouldn't be destroyed before inited.
>
>Fixes: efa5356b0d97 ("bridge: per vlan dst_metadata netlink support")
>CC: Roopa Prabhu <roopa@cumulusnetworks.com>
>Signed-off-by: Yotam Gigi <yotamg@mellanox.com>

Reviewed-by: Jiri Pirko <jiri@mellanox.com>
David Miller March 1, 2017, 10:56 p.m. UTC | #3
From: Yotam Gigi <yotamg@mellanox.com>
Date: Wed,  1 Mar 2017 16:50:45 +0200

> Fix error path order in nbp_vlan_init, so if switchdev_port_attr_set
> call failes, the vlan_hash wouldn't be destroyed before inited.
> 
> Fixes: efa5356b0d97 ("bridge: per vlan dst_metadata netlink support")
> CC: Roopa Prabhu <roopa@cumulusnetworks.com>
> Signed-off-by: Yotam Gigi <yotamg@mellanox.com>

Applied, thanks.
diff mbox

Patch

diff --git a/net/bridge/br_vlan.c b/net/bridge/br_vlan.c
index 62e68c0..b838213 100644
--- a/net/bridge/br_vlan.c
+++ b/net/bridge/br_vlan.c
@@ -997,10 +997,10 @@  int nbp_vlan_init(struct net_bridge_port *p)
 	RCU_INIT_POINTER(p->vlgrp, NULL);
 	synchronize_rcu();
 	vlan_tunnel_deinit(vg);
-err_vlan_enabled:
 err_tunnel_init:
 	rhashtable_destroy(&vg->vlan_hash);
 err_rhtbl:
+err_vlan_enabled:
 	kfree(vg);
 
 	goto out;