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

Commit 20d51660 authored by Randy Dunlap's avatar Randy Dunlap Committed by Greg Kroah-Hartman
Browse files

PCIE: check and return bus_register errors



Have pcie_port_bus_register() notice and return errors.
Mark it __must_check so that its caller(s) must check its return value.

Signed-off-by: default avatarRandy Dunlap <rdunlap@xenotime.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 6397c75c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ extern int pcie_port_device_suspend(struct pci_dev *dev, pm_message_t state);
extern int pcie_port_device_resume(struct pci_dev *dev);
#endif
extern void pcie_port_device_remove(struct pci_dev *dev);
extern void pcie_port_bus_register(void);
extern int pcie_port_bus_register(void);
extern void pcie_port_bus_unregister(void);

#endif /* _PORTDRV_H_ */
+3 −2
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@
 * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com)
 */

#include <linux/compiler.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/kernel.h>
@@ -402,9 +403,9 @@ void pcie_port_device_remove(struct pci_dev *dev)
		pci_disable_msi(dev);
}

void pcie_port_bus_register(void)
int __must_check pcie_port_bus_register(void)
{
	bus_register(&pcie_port_bus_type);
	return bus_register(&pcie_port_bus_type);
}

void pcie_port_bus_unregister(void)
+7 −2
Original line number Diff line number Diff line
@@ -129,12 +129,17 @@ static struct pci_driver pcie_portdrv = {

static int __init pcie_portdrv_init(void)
{
	int retval = 0;
	int retval;

	pcie_port_bus_register();
	retval = pcie_port_bus_register();
	if (retval) {
		printk(KERN_WARNING "PCIE: bus_register error: %d\n", retval);
		goto out;
	}
	retval = pci_register_driver(&pcie_portdrv);
	if (retval)
		pcie_port_bus_unregister();
 out:
	return retval;
}