lkml.org 
[lkml]   [2020]   [Nov]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH V2] fsl/fman: add missing put_devcie() call in fman_port_probe()
On Tue, 3 Nov 2020 19:23:23 +0800 Yu Kuai wrote:
> --- a/drivers/net/ethernet/freescale/fman/fman_port.c
> +++ b/drivers/net/ethernet/freescale/fman/fman_port.c
> @@ -1792,20 +1792,21 @@ static int fman_port_probe(struct platform_device *of_dev)
> if (!fm_node) {
> dev_err(port->dev, "%s: of_get_parent() failed\n", __func__);
> err = -ENODEV;
> - goto return_err;
> + goto free_port;
> }
>
> + of_node_put(port_node);
> fm_pdev = of_find_device_by_node(fm_node);
> of_node_put(fm_node);
> if (!fm_pdev) {
> err = -EINVAL;
> - goto return_err;
> + goto free_port;
> }

This is not right either. I just asked you fix up the order of the
error path, not move the of_node_put() in the body of the function.

Now you're releasing the reference on the object and still use it after.

\
 
 \ /
  Last update: 2020-11-05 02:32    [W:0.126 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site