mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-10-31 16:54:21 +00:00 
			
		
		
		
	xen-pcifront: fix PCI reference leak
Stanse found that when pdev is found and has no driver a reference is leaked in pcifront_common_process. So add pci_dev_put there. For the pdev == NULL case, pci_dev_put(NULL) is fine. [v2: Updated to not dereference pcidev->dev per Milton's observation] Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: Milton Miller <miltonm@bga.com> Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
		
							parent
							
								
									c8ac3902fb
								
							
						
					
					
						commit
						2a63dd7275
					
				
					 1 changed files with 3 additions and 2 deletions
				
			
		|  | @ -575,8 +575,9 @@ static pci_ers_result_t pcifront_common_process(int cmd, | |||
| 
 | ||||
| 	pcidev = pci_get_bus_and_slot(bus, devfn); | ||||
| 	if (!pcidev || !pcidev->driver) { | ||||
| 		dev_err(&pcidev->dev, | ||||
| 			"device or driver is NULL\n"); | ||||
| 		dev_err(&pdev->xdev->dev, "device or AER driver is NULL\n"); | ||||
| 		if (pcidev) | ||||
| 			pci_dev_put(pcidev); | ||||
| 		return result; | ||||
| 	} | ||||
| 	pdrv = pcidev->driver; | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Jiri Slaby
						Jiri Slaby