Loading net/mac80211/mesh.c +9 −6 Original line number Diff line number Diff line Loading @@ -315,6 +315,13 @@ struct mesh_table *mesh_table_alloc(int size_order) return newtbl; } static void __mesh_table_free(struct mesh_table *tbl) { kfree(tbl->hash_buckets); kfree(tbl->hashwlock); kfree(tbl); } void mesh_table_free(struct mesh_table *tbl, bool free_leafs) { struct hlist_head *mesh_hash; Loading @@ -330,9 +337,7 @@ void mesh_table_free(struct mesh_table *tbl, bool free_leafs) } spin_unlock(&tbl->hashwlock[i]); } kfree(tbl->hash_buckets); kfree(tbl->hashwlock); kfree(tbl); __mesh_table_free(tbl); } static void ieee80211_mesh_path_timer(unsigned long data) Loading Loading @@ -378,9 +383,7 @@ struct mesh_table *mesh_table_grow(struct mesh_table *tbl) hlist_for_each_safe(p, q, &newtbl->hash_buckets[i]) tbl->free_node(p, 0); } kfree(newtbl->hash_buckets); kfree(newtbl->hashwlock); kfree(newtbl); __mesh_table_free(tbl); endgrow: return NULL; } Loading Loading
net/mac80211/mesh.c +9 −6 Original line number Diff line number Diff line Loading @@ -315,6 +315,13 @@ struct mesh_table *mesh_table_alloc(int size_order) return newtbl; } static void __mesh_table_free(struct mesh_table *tbl) { kfree(tbl->hash_buckets); kfree(tbl->hashwlock); kfree(tbl); } void mesh_table_free(struct mesh_table *tbl, bool free_leafs) { struct hlist_head *mesh_hash; Loading @@ -330,9 +337,7 @@ void mesh_table_free(struct mesh_table *tbl, bool free_leafs) } spin_unlock(&tbl->hashwlock[i]); } kfree(tbl->hash_buckets); kfree(tbl->hashwlock); kfree(tbl); __mesh_table_free(tbl); } static void ieee80211_mesh_path_timer(unsigned long data) Loading Loading @@ -378,9 +383,7 @@ struct mesh_table *mesh_table_grow(struct mesh_table *tbl) hlist_for_each_safe(p, q, &newtbl->hash_buckets[i]) tbl->free_node(p, 0); } kfree(newtbl->hash_buckets); kfree(newtbl->hashwlock); kfree(newtbl); __mesh_table_free(tbl); endgrow: return NULL; } Loading