diff options
| author | Randy Dunlap <[email protected]> | 2006-10-20 21:44:12 +0000 |
|---|---|---|
| committer | Dominik Brodowski <[email protected]> | 2006-10-26 01:59:40 +0000 |
| commit | ace7d4772cf056d9b13b51bd496a8be968774592 (patch) | |
| tree | 516bc0c53799e92758c5a4b3c600788d7d2ec7ea | |
| parent | [PATCH] pcmcia: update alloc_io_space for conflict checking for multifunction... (diff) | |
| download | kernel-ace7d4772cf056d9b13b51bd496a8be968774592.tar.gz kernel-ace7d4772cf056d9b13b51bd496a8be968774592.zip | |
[PATCH] pcmcia/ds: driver layer error checking
Check driver layer return values in pcmcia/ds.c
Signed-off-by: Randy Dunlap <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Dominik Brodowski <[email protected]>
| -rw-r--r-- | drivers/pcmcia/ds.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c index 74b3124e8247..af392bfee5a6 100644 --- a/drivers/pcmcia/ds.c +++ b/drivers/pcmcia/ds.c @@ -1292,10 +1292,22 @@ struct bus_type pcmcia_bus_type = { static int __init init_pcmcia_bus(void) { + int ret; + spin_lock_init(&pcmcia_dev_list_lock); - bus_register(&pcmcia_bus_type); - class_interface_register(&pcmcia_bus_interface); + ret = bus_register(&pcmcia_bus_type); + if (ret < 0) { + printk(KERN_WARNING "pcmcia: bus_register error: %d\n", ret); + return ret; + } + ret = class_interface_register(&pcmcia_bus_interface); + if (ret < 0) { + printk(KERN_WARNING + "pcmcia: class_interface_register error: %d\n", ret); + bus_unregister(&pcmcia_bus_type); + return ret; + } pcmcia_setup_ioctl(); |
