stmmac: fix resource management when resume
authorGiuseppe CAVALLARO <peppe.cavallaro@st.com>
Fri, 4 Dec 2015 06:21:06 +0000 (07:21 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sat, 5 Dec 2015 22:49:11 +0000 (17:49 -0500)
commitae79a639bb3dfd168dc8c1e5d6dfc471bdf6f284
tree61d4a0322654b612d11a9ea0d39b20820ee1090a
parentb17c1d9a52b8b931e2f1019fda5d34ece621c5fd
stmmac: fix resource management when resume

There is a memleak when suspend/resume this driver version.
Currently the stmmac, during resume step, reallocates all the resources
but they are not released when suspend.
The patch is not to release these resources but the logic has been changed.
In fact, it is not necessary to free and reallocate all from scratch
because the memory data will be always preserved.
As final solution, the patch just reinit the descriptors and the rx/tx
pointers only when resume. Tested done on STi boxes.

Reported-by: ZhengShunQian <zhengsq@rock-chips.com>
Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c