linux/drivers/misc
Guillaume Chazarain e1996a69e1 asus-laptop: Fix rmmod of asus_laptop
The asus laptop driver conditionnaly registers leds in asus_led_register()
depending on their availability, but unconditionnaly unregisters them all at
exit time or when the module fails to load. Unregistering not registered leds
result in the following Oops. So we should check before unregistering.

 [<c032d2f9>] do_page_fault+0x511/0x5e9
 [<c032bae2>] error_code+0x6a/0x70
 [<c026abf8>] device_unregister+0x26/0x32
 [<f8864218>] led_classdev_unregister+0x58/0x94 [led_class]
 [<f88a90f8>] asus_led_exit+0x17/0x41 [asus_laptop]
 [<f88a91c9>] asus_laptop_exit+0xd/0x3f [asus_laptop]
 [<c013cee1>] sys_delete_module+0x17b/0x1a2
 [<c0106eae>] sysenter_past_esp+0x6b/0xa1

EIP: [<c026a9a3>] device_del+0xb/0x23a SS:ESP 0068:f594ef0c

Signed-off-by: Guillaume Chazarain <guichaz@yahoo.fr>
Signed-off-by: Len Brown <len.brown@intel.com>
2007-08-24 01:07:30 -04:00
..
hdpuftrs PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
ibmasm some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
asus-laptop.c asus-laptop: Fix rmmod of asus_laptop 2007-08-24 01:07:30 -04:00
eeprom_93cx6.c eeprom_93cx6: shorten pulse timing to match spec (bis) 2007-07-10 12:41:09 -04:00
ioc4.c [PATCH] IOC3/IOC4: PCI mem space resources 2007-02-11 10:51:25 -08:00
Kconfig Add some help texts to recently-introduced kconfig items 2007-08-18 09:52:50 -07:00
lkdtm.c [PATCH] assigning enum constant to char * is vile, even if it happens to be 0 2007-02-09 08:28:48 -08:00
Makefile [PATCH] Add 93cx6 eeprom library 2007-07-08 22:16:36 -04:00
msi-laptop.c DMI-based module autoloading 2007-07-11 16:09:00 -07:00
phantom.c Misc: phantom, take care of pci posting 2007-05-23 20:14:14 -07:00
sony-laptop.c sony-laptop: sony_nc_ids[] can become static. 2007-08-03 15:25:44 -04:00
thinkpad_acpi.c ACPI: thinkpad-acpi: fix the module init failure path 2007-08-03 15:32:58 -04:00
thinkpad_acpi.h ACPI: thinkpad-acpi: fix the module init failure path 2007-08-03 15:32:58 -04:00
tifm_7xx1.c misc/tifm_7xx1: replace deprecated irq flag 2007-06-01 08:18:28 -07:00
tifm_core.c tifm: layout fixes, small changes to comments and printfs 2007-05-01 13:04:15 +02:00