fbdev: vermilion: decrease reference count in error path
authorXiongfeng Wang <wangxiongfeng2@huawei.com>
Mon, 14 Nov 2022 08:56:54 +0000 (16:56 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:43 +0000 (13:32 +0100)
[ Upstream commit 001f2cdb952a9566c77fb4b5470cc361db5601bb ]

pci_get_device() will increase the reference count for the returned
pci_dev. For the error path, we need to use pci_dev_put() to decrease
the reference count.

Fixes: dbe7e429fedb ("vmlfb: framebuffer driver for Intel Vermilion Range")
Signed-off-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/video/fbdev/vermilion/vermilion.c

index 82b36db..33051e3 100644 (file)
@@ -278,8 +278,10 @@ static int vmlfb_get_gpu(struct vml_par *par)
 
        mutex_unlock(&vml_mutex);
 
-       if (pci_enable_device(par->gpu) < 0)
+       if (pci_enable_device(par->gpu) < 0) {
+               pci_dev_put(par->gpu);
                return -ENODEV;
+       }
 
        return 0;
 }