Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 50bf14b3 authored by Akinobu Mita's avatar Akinobu Mita Committed by Greg Kroah-Hartman
Browse files

pci: fix __pci_register_driver error handling



__pci_register_driver() error path forgot to unwind.
driver_unregister() needs to be called when pci_create_newid_file() failed.

Signed-off-by: default avatarAkinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 0dcb2b7e
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -445,9 +445,12 @@ int __pci_register_driver(struct pci_driver *drv, struct module *owner)

	/* register with core */
	error = driver_register(&drv->driver);
	if (error)
		return error;

	if (!error)
	error = pci_create_newid_file(drv);
	if (error)
		driver_unregister(&drv->driver);

	return error;
}