cxgb4vf: fix memleak in mac_hlist initialization
Subsystems (3)
PATCH 1/1 cxgb4vf: fix memleak in mac_hlist initialization
mac_hlist was initialized during adapter_up, which will be called every time a vf device is first brought up, or every time when device is brought up again after bringing all devices down. This means our state of previous list is lost, causing a memleak if entries are present in the list. To fix that, move list init to the condition that performs initial one time adapter setup.
--- drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c +4 -2
@@ -722,6 +722,10 @@ static int adapter_up(struct adapter *adapter)if (adapter->flags &USING_MSIX )name_msix_vecs (adapter); + +/* Initialize hash mac addr list*/ +INIT_LIST_HEAD (&adapter->mac_hlist); + adapter->flags |=FULL_INIT_DONE ; }
@@ -747,8 +751,6 @@ static int adapter_up(struct adapter *adapter)enable_rx (adapter);t4vf_sge_start (adapter); -/* Initialize hash mac addr list*/ -INIT_LIST_HEAD (&adapter->mac_hlist);return 0 ; }
Signature · 1 line
1.8.3.1
From: Arjun Vynipadath <[email protected]>
Date: Fri, 9 Nov 2018 14:52:01 +0530
Quoted 9 lines
mac_hlistwas initialized duringadapter_up, which will be called every time a vf device is first brought up, or every time when device is brought up again after bringing all devices down. This means our state of previous list is lost, causing a memleak if entries are present in the list. To fix that, move list init to the condition that performs initial one time adapter setup.Signed-off-by Arjun Vynipadath <[email protected]>Signed-off-by Ganesh Goudar <[email protected]>
Applied.