Messages in this thread | | | Date | Wed, 19 Apr 2023 08:55:07 +0800 | Subject | Re: [PATCH] clk: imx: clk-imx8mm: fix memory leak issue in 'imx8mm_clocks_probe' | From | Dongliang Mu <> |
| |
On 2023/4/19 03:57, Stephen Boyd wrote: > Quoting 周师德 (2023-04-13 19:02:19) >> >> >>> -----原始邮件----- >>> 发件人: "Stephen Boyd" <sboyd@kernel.org> >>> 发送时间: 2023-04-14 03:06:59 (星期五) >>> 收件人: "Abel Vesa" <abelvesa@kernel.org>, "Bai Ping" <ping.bai@nxp.com>, "Fabio Estevam" <festevam@gmail.com>, "Michael Turquette" <mturquette@baylibre.com>, "NXP Linux Team" <linux-imx@nxp.com>, "Peng Fan" <peng.fan@nxp.com>, "Pengutronix Kernel Team" <kernel@pengutronix.de>, "Sascha Hauer" <s.hauer@pengutronix.de>, "Shawn Guo" <shawnguo@kernel.org>, "Zhou Shide" <u201911681@hust.edu.cn> >>> 抄送: hust-os-kernel-patches@googlegroups.com, "Zhou Shide" <u201911681@hust.edu.cn>, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, "Hao Luo" <m202171776@hust.edu.cn> >>> 主题: Re: [PATCH] clk: imx: clk-imx8mm: fix memory leak issue in 'imx8mm_clocks_probe' >>> >>> Quoting Zhou Shide (2023-04-12 20:24:39) >>>> The function imx8mm_clocks_probe() has two main issues: >>>> - The of_iomap() function may cause a memory leak. >>>> - Memory allocated for 'clk_hw_data' may not be freed properly >>>> in some paths. >>>> >>>> To fix these issues, this commit replaces the use of of_iomap() >>>> with devm_of_iomap() and replaces kzalloc() with devm_kzalloc(). >>>> This ensures that all memory is properly managed and automatically >>>> freed when the device is removed. >>>> >>>> In addition, when devm_of_iomap() allocates memory with an error, >>>> it will first jump to label "unregister_hws" and >>>> then return PTR_ ERR(base). >>>> >>>> Fixes: 9c71f9ea35d7 ("clk: imx: imx8mm: Switch to clk_hw based API") >>>> Fixes: ba5625c3e272 ("clk: imx: Add clock driver support for imx8mm") >>>> Signed-off-by: Zhou Shide <u201911681@hust.edu.cn> >>>> --- >>>> The issue is discovered by static analysis, and the patch is not tested yet. >>> And you're not coordinating with each other? >> What do you mean by "coordinating with each other"? >> > I see two patches to the same driver from the same university on the > list. Preferably you coordinate and decide who will fix what smatch > warnings.
Hi Stephen,
As their advisor, I coordinate and assign smatch warnings to each student. I double check our assignment table:
drivers/clk/imx/clk-imx8mn.c:612 imx8mn_clocks_probe() warn: 'base' from of_iomap() not released on lines: 612. drivers/clk/imx/clk-imxrt1050.c:154 imxrt1050_clocks_probe() warn: 'pll_base' from of_iomap() not released on lines: 108,154. drivers/clk/imx/clk-imx8mm.c:619 imx8mm_clocks_probe() warn: 'base' from of_iomap() not released on lines: 403,619. drivers/clk/imx/clk-imx8mq.c:611 imx8mq_clocks_probe() warn: 'base' from of_iomap() not released on lines: 399,611.
There are four similar warnings from your subsystem. If I understand correctly, two students are patching issues from different probe functions in the different files since we assign all issues in one file to one student. Maybe you mix clk-imx8mn (Hao Luo) and clk-imx8mm(Shide Zhou). They only differ in one char.
If I miss anything, please let me know. Next time, I will ask one student to fix the issues in one subsystem. This can simply the effort spent by other student.
Dongliang Mu
>
| |