Re: [PATCH V2] mips: txx9: fix resource leak after register fail

From: Ding Xiang
Date: Wed Sep 05 2018 - 22:17:42 EST



On 9/5/2018 11:37 PM, Atsushi Nemoto wrote:
On Wed, 5 Sep 2018 19:22:19 +0800, Ding Xiang <dingxiang@xxxxxxxxxxxxxxxxxxxx> wrote:
the memory allocated and ioremap address need free after
device_register return error.
...
exit_put:
put_device(&dev->dev);
- return;
+exit_free:
+ iounmap(dev->base);
+ kfree(dev);
This change will break exit_put error path.
I think kfree will be called from txx9_device_release by put_device.

Please refer James's comment on previous trial:
<https://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20180305221833.GJ4197%40saruman>

yes, put_device will call txx9_device_release and free txx9_sramc_dev, and kfree in sysfs_create_bin_file() error handle

is also unneeded, I will send a new patch soon