Re: airo_cs problem - kernel 2.6.1

From: Russell King
Date: Tue Jan 27 2004 - 07:55:59 EST


On Tue, Jan 27, 2004 at 12:45:38PM +0000, Russell King wrote:
> On Tue, Jan 27, 2004 at 01:07:09PM +0100, Angelo Dell'Aera wrote:
> > Today I experienced this problem with a Cisco Aironet 350.
> > I just want to point out it's the first time it happens.
> > In fact, I still used this NIC on this kernel (2.6.1) without
> > any kind of problem. Attached is an extract from my log.
>

Ok, actually the bug has been fixed in 2.6.2-rc, so this problem can
finally be laid to rest. Here's the as-merged fix:

===== drivers/net/wireless/airo.c 1.80 vs 1.81 =====
--- 1.80/drivers/net/wireless/airo.c Sun Dec 7 13:22:52 2003
+++ 1.81/drivers/net/wireless/airo.c Sat Jan 10 16:04:13 2004
@@ -1027,7 +1027,6 @@
#define FLAG_802_11 7
#define FLAG_PENDING_XMIT 9
#define FLAG_PENDING_XMIT11 10
-#define FLAG_PCI 11
#define JOB_MASK 0x1ff0000
#define JOB_DIE 16
#define JOB_XMIT 17
@@ -4623,7 +4622,6 @@
return -ENODEV;

pci_set_drvdata(pdev, dev);
- set_bit (FLAG_PCI, &((struct airo_info *)dev->priv)->flags);
return 0;
}

@@ -4653,7 +4651,7 @@

#ifdef CONFIG_PCI
printk( KERN_INFO "airo: Probing for PCI adapters\n" );
- pci_module_init(&airo_driver);
+ pci_register_driver(&airo_driver);
printk( KERN_INFO "airo: Finished probing for PCI adapters\n" );
#endif

@@ -4665,22 +4663,15 @@

static void __exit airo_cleanup_module( void )
{
- int is_pci = 0;
while( airo_devices ) {
printk( KERN_INFO "airo: Unregistering %s\n", airo_devices->dev->name );
-#ifdef CONFIG_PCI
- if (test_bit(FLAG_PCI, &((struct airo_info *)airo_devices->dev->priv)->flags))
- is_pci = 1;
-#endif
stop_airo_card( airo_devices->dev, 1 );
}
remove_proc_entry("aironet", proc_root_driver);

- if (is_pci) {
#ifdef CONFIG_PCI
- pci_unregister_driver(&airo_driver);
+ pci_unregister_driver(&airo_driver);
#endif
- }
}

#ifdef WIRELESS_EXT


--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html