On 9/17/24 20:43, Sergey Shtylyov wrote: >> From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx> >> Date: Tue, 17 Sep 2024 13:43:24 +0200 >> >> Add a label so that a bit of exception handling can be better reused > > s/exception/error/. > >> in a subsequent if branch of this function implementation. >> >> This issue was detected by using the Coccinelle software. >> >> Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx> >> --- >> drivers/ata/pata_octeon_cf.c | 9 ++++----- >> 1 file changed, 4 insertions(+), 5 deletions(-) >> >> diff --git a/drivers/ata/pata_octeon_cf.c b/drivers/ata/pata_octeon_cf.c >> index 0bb9607e7348..62289f6aef95 100644 >> --- a/drivers/ata/pata_octeon_cf.c >> +++ b/drivers/ata/pata_octeon_cf.c >> @@ -848,14 +848,13 @@ static int octeon_cf_probe(struct platform_device *pdev) >> struct resource *res_dma; >> int i; >> res_dma = platform_get_resource(dma_dev, IORESOURCE_MEM, 0); >> - if (!res_dma) { >> - put_device(&dma_dev->dev); >> - of_node_put(dma_node); >> - return -EINVAL; >> - } >> + if (!res_dma) >> + goto put_device; >> + >> cf_port->dma_base = (u64)devm_ioremap(&pdev->dev, res_dma->start, >> resource_size(res_dma)); >> if (!cf_port->dma_base) { >> +put_device: > > Ugh... :-/ > Please use the new-fangled *devm_platform_ioremap_resource() instead of those > old-fashioned APIs. Another option is to place this error patch somewhere at the end of this function but I think I prefer the new APIs. [...] MBR, Sergey