> -----Original Message----- > From: Jakub Kicinski <k...@kernel.org> > Sent: 05 November 2020 03:31 > To: Yu Kuai <yuku...@huawei.com> > Cc: Madalin Bucur <madalin.bu...@nxp.com>; da...@davemloft.net; Florinel > Iordache <florinel.iorda...@nxp.com>; netdev@vger.kernel.org; linux- > ker...@vger.kernel.org; yi.zh...@huawei.com > Subject: Re: [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.
If you manage to put together a v3, please also address the typo in the subject (put_devcie). Madalin