mirror of https://gitee.com/openkylin/linux.git
cxgb4: free mac_hlist properly
The locally maintained list for tracking hash mac table was not freed during driver remove. Signed-off-by: Arjun Vynipadath <arjun@chelsio.com> Signed-off-by: Ganesh Goudar <ganeshgr@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e6e8869aed
commit
2a8d84bf51
|
@ -2295,6 +2295,8 @@ static int cxgb_up(struct adapter *adap)
|
|||
|
||||
static void cxgb_down(struct adapter *adapter)
|
||||
{
|
||||
struct hash_mac_addr *entry, *tmp;
|
||||
|
||||
cancel_work_sync(&adapter->tid_release_task);
|
||||
cancel_work_sync(&adapter->db_full_task);
|
||||
cancel_work_sync(&adapter->db_drop_task);
|
||||
|
@ -2303,6 +2305,12 @@ static void cxgb_down(struct adapter *adapter)
|
|||
|
||||
t4_sge_stop(adapter);
|
||||
t4_free_sge_resources(adapter);
|
||||
|
||||
list_for_each_entry_safe(entry, tmp, &adapter->mac_hlist, list) {
|
||||
list_del(&entry->list);
|
||||
kfree(entry);
|
||||
}
|
||||
|
||||
adapter->flags &= ~FULL_INIT_DONE;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue