Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

fbdev: offb: fix PCI device reference leak on probe failure

offb_init_nodriver() gets a referenced PCI device with pci_get_device().
If pci_enable_device() fails, the function returns without dropping that
reference.

Release the PCI device reference before returning from the
pci_enable_device() failure path.

Fixes: 5bda8f7b5468 ("video: fbdev: offb: Call pci_enable_device() before using the PCI VGA device")
Co-developed-by: Myeonghun Pak <mhun512@gmail.com>
Signed-off-by: Myeonghun Pak <mhun512@gmail.com>
Co-developed-by: Ijae Kim <ae878000@gmail.com>
Signed-off-by: Ijae Kim <ae878000@gmail.com>
Co-developed-by: Taegyu Kim <tmk5904@psu.edu>
Signed-off-by: Taegyu Kim <tmk5904@psu.edu>
Signed-off-by: Yuho Choi <dbgh9129@gmail.com>
Signed-off-by: Helge Deller <deller@gmx.de>

authored by

Yuho Choi and committed by
Helge Deller
869b93ba 6596a02b

+6 -1
+6 -1
drivers/video/fbdev/offb.c
··· 640 640 vid = be32_to_cpup(vidp); 641 641 did = be32_to_cpup(didp); 642 642 pdev = pci_get_device(vid, did, NULL); 643 - if (!pdev || pci_enable_device(pdev)) 643 + if (!pdev) 644 644 return; 645 + 646 + if (pci_enable_device(pdev)) { 647 + pci_dev_put(pdev); 648 + return; 649 + } 645 650 } 646 651 #endif 647 652 /* kludge for valkyrie */