diff options
Diffstat (limited to 'net/8021q/vlan.c')
-rw-r--r-- | net/8021q/vlan.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c index d9cb020029b9..1483243edf14 100644 --- a/net/8021q/vlan.c +++ b/net/8021q/vlan.c | |||
@@ -282,8 +282,11 @@ out_uninit_applicant: | |||
282 | if (ngrp) | 282 | if (ngrp) |
283 | vlan_gvrp_uninit_applicant(real_dev); | 283 | vlan_gvrp_uninit_applicant(real_dev); |
284 | out_free_group: | 284 | out_free_group: |
285 | if (ngrp) | 285 | if (ngrp) { |
286 | vlan_group_free(ngrp); | 286 | hlist_del_rcu(&ngrp->hlist); |
287 | /* Free the group, after all cpu's are done. */ | ||
288 | call_rcu(&ngrp->rcu, vlan_rcu_free); | ||
289 | } | ||
287 | return err; | 290 | return err; |
288 | } | 291 | } |
289 | 292 | ||