From: Hans Verkuil Date: Wed, 20 Jan 2021 08:52:53 +0000 (+0100) Subject: media: pci/ivtv: release memory regions on error X-Git-Tag: v5.15~1736^2~145 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=dd3bca72c4db353080e3de44124d45712d73b4f4;p=platform%2Fkernel%2Flinux-starfive.git media: pci/ivtv: release memory regions on error Fix this smatch warning: drivers/media/pci/ivtv/ivtv-driver.c:900 ivtv_setup_pci() warn: 'itv->base_addr' not released on lines: 876. One error path didn't release the memory regions. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/pci/ivtv/ivtv-driver.c b/drivers/media/pci/ivtv/ivtv-driver.c index 28acb14..6e448cb 100644 --- a/drivers/media/pci/ivtv/ivtv-driver.c +++ b/drivers/media/pci/ivtv/ivtv-driver.c @@ -873,6 +873,11 @@ static int ivtv_setup_pci(struct ivtv *itv, struct pci_dev *pdev, pci_read_config_word(pdev, PCI_COMMAND, &cmd); if (!(cmd & PCI_COMMAND_MASTER)) { IVTV_ERR("Bus Mastering is not enabled\n"); + if (itv->has_cx23415) + release_mem_region(itv->base_addr + IVTV_DECODER_OFFSET, + IVTV_DECODER_SIZE); + release_mem_region(itv->base_addr, IVTV_ENCODER_SIZE); + release_mem_region(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE); return -ENXIO; } }