From: Jakub Kicinski Date: Wed, 3 Apr 2013 16:50:54 +0000 (+0000) Subject: ixgbe: fix registration order of driver and DCA nofitication X-Git-Tag: v3.4.92~25 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7b74f336c5553f45e97f710808cbf7617fbcac7f;p=platform%2Fkernel%2Flinux-stable.git ixgbe: fix registration order of driver and DCA nofitication commit f01fc1a82c2ee68726b400fadb156bd623b5f2f1 upstream. ixgbe_notify_dca cannot be called before driver registration because it expects driver's klist_devices to be allocated and initialized. While on it make sure debugfs files are removed when registration fails. Signed-off-by: Jakub Kicinski Tested-by: Phil Schmitt Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller [bwh: Backported to 3.2: no debugfs support] Signed-off-by: Ben Hutchings Cc: Qiang Huang Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index 8f95545..8611409 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -7464,12 +7464,15 @@ static int __init ixgbe_init_module(void) pr_info("%s - version %s\n", ixgbe_driver_string, ixgbe_driver_version); pr_info("%s\n", ixgbe_copyright); + ret = pci_register_driver(&ixgbe_driver); + if (ret) + return ret; + #ifdef CONFIG_IXGBE_DCA dca_register_notify(&dca_notifier); #endif - ret = pci_register_driver(&ixgbe_driver); - return ret; + return 0; } module_init(ixgbe_init_module);