From 1b6632abd465c70d5d651987e6f60a7b1c791261 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Sun, 1 Oct 2006 07:31:09 -0400 Subject: [PATCH] --- yaml --- r: 37971 b: refs/heads/master c: de897881e474cae06cf06c830fcadc916c53ce64 h: refs/heads/master i: 37969: 087ca73d4336e1f90dffd21e8c5f3f384d53e4c3 37967: 7df282d869a7077f73b2a6507de99717c5a05197 v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/airo.c | 23 +++++++++++++++++++---- trunk/drivers/net/wireless/ipw2100.c | 11 ++++++++--- 3 files changed, 28 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index fabdd4402397..e1af4f2696aa 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b7a00ecd557859c4037b6465fdd6c9a49b1fa649 +refs/heads/master: de897881e474cae06cf06c830fcadc916c53ce64 diff --git a/trunk/drivers/net/wireless/airo.c b/trunk/drivers/net/wireless/airo.c index ba737c6cebec..39d09345027c 100644 --- a/trunk/drivers/net/wireless/airo.c +++ b/trunk/drivers/net/wireless/airo.c @@ -5659,25 +5659,40 @@ static int airo_pci_resume(struct pci_dev *pdev) static int __init airo_init_module( void ) { - int i, have_isa_dev = 0; + int i; +#if 0 + int have_isa_dev = 0; +#endif airo_entry = create_proc_entry("aironet", S_IFDIR | airo_perm, proc_root_driver); - airo_entry->uid = proc_uid; - airo_entry->gid = proc_gid; + + if (airo_entry) { + airo_entry->uid = proc_uid; + airo_entry->gid = proc_gid; + } for( i = 0; i < 4 && io[i] && irq[i]; i++ ) { airo_print_info("", "Trying to configure ISA adapter at irq=%d " "io=0x%x", irq[i], io[i] ); if (init_airo_card( irq[i], io[i], 0, NULL )) +#if 0 have_isa_dev = 1; +#else + /* do nothing */ ; +#endif } #ifdef CONFIG_PCI airo_print_info("", "Probing for PCI adapters"); - pci_register_driver(&airo_driver); + i = pci_register_driver(&airo_driver); airo_print_info("", "Finished probing for PCI adapters"); + + if (i) { + remove_proc_entry("aironet", proc_root_driver); + return i; + } #endif /* Always exit with success, as we are a library module diff --git a/trunk/drivers/net/wireless/ipw2100.c b/trunk/drivers/net/wireless/ipw2100.c index 6c5add701a6f..8ec9b73bbdd4 100644 --- a/trunk/drivers/net/wireless/ipw2100.c +++ b/trunk/drivers/net/wireless/ipw2100.c @@ -6267,7 +6267,9 @@ static int ipw2100_pci_init_one(struct pci_dev *pci_dev, IPW_DEBUG_INFO("%s: Bound to %s\n", dev->name, pci_name(pci_dev)); /* perform this after register_netdev so that dev->name is set */ - sysfs_create_group(&pci_dev->dev.kobj, &ipw2100_attribute_group); + err = sysfs_create_group(&pci_dev->dev.kobj, &ipw2100_attribute_group); + if (err) + goto fail_unlock; /* If the RF Kill switch is disabled, go ahead and complete the * startup sequence */ @@ -6533,13 +6535,16 @@ static int __init ipw2100_init(void) printk(KERN_INFO DRV_NAME ": %s\n", DRV_COPYRIGHT); ret = pci_register_driver(&ipw2100_pci_driver); + if (ret) + goto out; #ifdef CONFIG_IPW2100_DEBUG ipw2100_debug_level = debug; - driver_create_file(&ipw2100_pci_driver.driver, - &driver_attr_debug_level); + ret = driver_create_file(&ipw2100_pci_driver.driver, + &driver_attr_debug_level); #endif +out: return ret; }