Messages in this thread | | | Subject | Re: [PATCH] spi: Fix a memory leaking bug in wl1271_probe() | From | Jon Hunter <> | Date | Fri, 24 May 2019 10:42:25 +0100 |
| |
On 23/05/2019 15:30, Gen Zhang wrote: > In wl1271_probe(), 'glue->core' is allocated by platform_device_alloc(), > when this allocation fails, ENOMEM is returned. However, 'pdev_data' > and 'glue' are allocated by devm_kzalloc() before 'glue->core'. When > platform_device_alloc() returns NULL, we should also free 'pdev_data' > and 'glue' before wl1271_probe() ends to prevent leaking memory. > > Similarly, we shoulf free 'pdev_data' when 'glue' is NULL. And we should > free 'pdev_data' and 'glue' when 'glue->reg' is error and when 'ret' is > error. > > Further, we should free 'glue->core', 'pdev_data' and 'glue' when this > function normally ends to prevent leaking memory. > > Signed-off-by: Gen Zhang <blackgod016574@gmail.com> I have seen several of these patches now, and this is not correct. I think you need to understand how devm_kzalloc() works.
Jon
-- nvpublic
| |