media: saa7164: fix missing pci_disable_device()
authorLiu Shixin <liushixin2@huawei.com>
Sat, 26 Nov 2022 11:31:26 +0000 (11:31 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:22 +0000 (13:32 +0100)
[ Upstream commit 57fb35d7542384cac8f198cd1c927540ad38b61a ]

Add missing pci_disable_device() in the error path in saa7164_initdev().

Fixes: 443c1228d505 ("V4L/DVB (12923): SAA7164: Add support for the NXP SAA7164 silicon")
Signed-off-by: Liu Shixin <liushixin2@huawei.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/pci/saa7164/saa7164-core.c

index d5f32e3..754c8be 100644 (file)
@@ -1259,7 +1259,7 @@ static int saa7164_initdev(struct pci_dev *pci_dev,
 
        if (saa7164_dev_setup(dev) < 0) {
                err = -EINVAL;
-               goto fail_free;
+               goto fail_dev;
        }
 
        /* print pci info */
@@ -1427,6 +1427,8 @@ fail_fw:
 
 fail_irq:
        saa7164_dev_unregister(dev);
+fail_dev:
+       pci_disable_device(pci_dev);
 fail_free:
        v4l2_device_unregister(&dev->v4l2_dev);
        kfree(dev);