Message ID | 06ed13ca-9f52-4b49-9178-aae245bfd958@siemens.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net,v2] net: ti: icssg-prueth: Fix error cleanup on failing pruss_request_mem_region | expand |
On 05.11.2023 10:51, Jan Kiszka wrote: > From: Jan Kiszka <jan.kiszka@siemens.com> > > We were just continuing in this case, surely not desired. > > Fixes: 128d5874c082 ("net: ti: icssg-prueth: Add ICSSG ethernet driver") > Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> > --- Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com> > > Changes in v2: > - add proper tags > > drivers/net/ethernet/ti/icssg/icssg_prueth.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/ti/icssg/icssg_prueth.c b/drivers/net/ethernet/ti/icssg/icssg_prueth.c > index d119b2bb8158..845e8a782d3a 100644 > --- a/drivers/net/ethernet/ti/icssg/icssg_prueth.c > +++ b/drivers/net/ethernet/ti/icssg/icssg_prueth.c > @@ -2063,7 +2063,7 @@ static int prueth_probe(struct platform_device *pdev) > &prueth->shram); > if (ret) { > dev_err(dev, "unable to get PRUSS SHRD RAM2: %d\n", ret); > - pruss_put(prueth->pruss); > + goto put_pruss; > } > > prueth->sram_pool = of_gen_pool_get(np, "sram", 0); > @@ -2215,6 +2215,8 @@ static int prueth_probe(struct platform_device *pdev) > > put_mem: > pruss_release_mem_region(prueth->pruss, &prueth->shram); > + > +put_pruss: > pruss_put(prueth->pruss); > > put_cores:
diff --git a/drivers/net/ethernet/ti/icssg/icssg_prueth.c b/drivers/net/ethernet/ti/icssg/icssg_prueth.c index d119b2bb8158..845e8a782d3a 100644 --- a/drivers/net/ethernet/ti/icssg/icssg_prueth.c +++ b/drivers/net/ethernet/ti/icssg/icssg_prueth.c @@ -2063,7 +2063,7 @@ static int prueth_probe(struct platform_device *pdev) &prueth->shram); if (ret) { dev_err(dev, "unable to get PRUSS SHRD RAM2: %d\n", ret); - pruss_put(prueth->pruss); + goto put_pruss; } prueth->sram_pool = of_gen_pool_get(np, "sram", 0); @@ -2215,6 +2215,8 @@ static int prueth_probe(struct platform_device *pdev) put_mem: pruss_release_mem_region(prueth->pruss, &prueth->shram); + +put_pruss: pruss_put(prueth->pruss); put_cores: