[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1448181858-5935-1-git-send-email-zhengsq@rock-chips.com>
Date: Sun, 22 Nov 2015 16:44:17 +0800
From: Shunqian Zheng <zhengsq@...k-chips.com>
To: peppe.cavallaro@...com
Cc: linux-kernel@...r.kernel.org, linux-rockchip@...ts.infradead.org,
netdev@...r.kernel.org, dianders@...gle.com,
ZhengShunQian <zhengsq@...k-chips.com>
Subject: [RFC PATCH v1] Trying to fix the stmmac memory leak during suspend/resume
From: ZhengShunQian <zhengsq@...k-chips.com>
When I run Suspend-to-Ram stress test on my Rockchip RK3288(SoC) board
that integrated stmmac ethernet, it always OOM after a few iterations,
usually 50 times is enough to reproduce.
Compiled kernel with KMEMLEAK feature, I got the logs as below:
unreferenced object 0xed89ac00 (size 192):
comm "busybox", pid 79, jiffies 2251 (age 54.580s)
hex dump (first 32 bytes):
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00 00 00 00 00 00 d1 ed 00 00 00 00 00 00 00 00 ................
backtrace:
[<c05430dc>] kmemleak_alloc+0x44/0x78
[<c012b198>] kmem_cache_alloc+0x1ac/0x264
[<c0442134>] __build_skb+0x38/0x9c
[<c0442350>] __netdev_alloc_skb+0xac/0x118
[<c0335f8c>] init_dma_desc_rings+0xcc/0x474
[<c0336f20>] stmmac_resume+0xc4/0x14c
[<c033ed28>] stmmac_pltfr_resume+0x3c/0x40
[<c02ed4dc>] platform_pm_resume+0x3c/0x50
[<c02f7ad0>] dpm_run_callback+0x7c/0x160
[<c02f7e14>] device_resume+0x174/0x1c0
[<c02f9368>] dpm_resume+0x110/0x2cc
[<c02f9830>] dpm_resume_end+0x1c/0x28
[<c00646c0>] suspend_devices_and_enter+0x53c/0x6ec
[<c0064ba4>] pm_suspend+0x334/0x478
[<c0063110>] state_store+0xac/0xc8
[<c0265228>] kobj_attr_store+0x1c/0x28
Actually I don't think I know net/stmmac good enough to fix this bug.
I really appreciate that the exports of net/stmmac can take over it if
you think it is a bug too.
ZhengShunQian (1):
net: stmmac: Free rx_skbufs before realloc
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
--
1.9.1
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists