Re: [PATCH] rsi: Fix failure to load firmware after memory leak fix and fix the leak
From: Mike Looijmans <hidden>
Date: 2015-07-28 05:53:39
Also in:
lkml, netdev, stable
On 27-07-15 12:28, Kalle Valo wrote:
Mike Looijmans [off-list ref] writes:quoted
Fixes commit eae79b4f3e82ca63a53478a161b190a0d38fe526 ("rsi: fix memory leak in rsi_load_ta_instructions()") which stopped the driver from functioning.You can abbreviate the commit id: Fixes commit eae79b4f3e82 ("rsi: fix memory leak in rsi_load_ta_instructions()") which stopped the driver from functioning.quoted
Firmware data has been allocated using vmalloc(), resulting in memory that cannot be used for DMA. Hence the firmware was first copied to a buffer allocated with kmalloc() in the original code. This patch reverts the commit and only calls "kfree()" to release the buffer after sending the data. This fixes the memory leak without breaking the driver. Add a comment to the kmemdup() calls to explain why this is done. Tested on a Topic Miami-Florida board which contains the rsi SDIO chip. Also added the same kfree() call to the USB glue driver. This was not tested on actual hardware though, as I only have the SDIO version. Signed-off-by: Mike Looijmans <redacted>Add this before Signed-off-by line: Fixes: eae79b4f3e82 ("rsi: fix memory leak in rsi_load_ta_instructions()")quoted
Cc: stable@vger.kernel.orgAlso no need to send email to stable@vger.kernel.org list, this line is enough and the stable team will pick the commit automatically.
I wondered why that happened, and just noticed that git send-email automatically added this to the recipients. So it happened for v2 as well, sorry for that. Kind regards, Mike Looijmans System Expert TOPIC Embedded Products Eindhovenseweg 32-C, NL-5683 KH Best Postbus 440, NL-5680 AK Best Telefoon: +31 (0) 499 33 69 79 Telefax: +31 (0) 499 33 69 70 E-mail: mike.looijmans@topicproducts.com Website: www.topicproducts.com Please consider the environment before printing this e-mail