Thread (4 messages) flat view 4 messages, 2 authors, 2021-10-29

Re: [PATCH v1] can: etas_es58x: es58x_rx_err_msg: fix memory leak in error path

From: Marc Kleine-Budde <mkl@pengutronix.de>
Date: 2021-10-29 11:20:58
Also in: linux-can, lkml

On 27.10.2021 17:48:21, Vincent MAILHOL wrote:
On Wed. 27 Oct 2021 at 16:39, Marc Kleine-Budde [off-list ref] wrote:
quoted
On 27.10.2021 03:07:40, Vincent Mailhol wrote:
quoted
In es58x_rx_err_msg(), if can->do_set_mode() fails, the function
directly returns without calling netif_rx(skb). This means that the
skb previously allocated by alloc_can_err_skb() is not freed. In other
terms, this is a memory leak.

This patch simply removes the return statement in the error branch and
let the function continue.

* Appendix: how the issue was found *
Thanks for the explanation, but I think I'll remove the appendix while
applying.
The commit will have a link to this thread so if you don't mind,
I suggest to replace the full appendix with:

Issue was found with GCC -fanalyzer, please follow the link below
for details.
Makes sense, good idea.
You can of course do the same for the m_can patch.
ACK

Added to linux-can/testing, will send it out once v5.15 is out.

Thanks,
Marc

-- 
Pengutronix e.K.                 | Marc Kleine-Budde           |
Embedded Linux                   | https://www.pengutronix.de  |
Vertretung West/Dortmund         | Phone: +49-231-2826-924     |
Amtsgericht Hildesheim, HRA 2686 | Fax:   +49-5121-206917-5555 |

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help