summaryrefslogtreecommitdiffstats
path: root/arch/parisc
diff options
context:
space:
mode:
authorMatthew Wilcox <matthew@wil.cx>2006-10-04 13:37:41 -0600
committerMatthew Wilcox <willy@hera.kernel.org>2006-10-05 01:48:18 +0000
commit1070c9655b90016ec4c9b59c402292e57ee15885 (patch)
tree01024599b8d4f37839dae0d18b8a2d2c71dadb2c /arch/parisc
parentf64ef295032d07345ca26bf4876a1577c4dccb37 (diff)
[PA-RISC] Fix must_check warnings in drivers.c
Panic if we can't register the parisc bus or the root parisc device. There's no way we can boot without them, so let the user know ASAP. If we can't register a parisc device, handle the failure gracefully. Signed-off-by: Matthew Wilcox <willy@parisc-linux.org>
Diffstat (limited to 'arch/parisc')
-rw-r--r--arch/parisc/kernel/drivers.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c
index 3d569a485a1..2b257e4f17d 100644
--- a/arch/parisc/kernel/drivers.c
+++ b/arch/parisc/kernel/drivers.c
@@ -424,7 +424,10 @@ struct parisc_device * create_tree_node(char id, struct device *parent)
/* make the generic dma mask a pointer to the parisc one */
dev->dev.dma_mask = &dev->dma_mask;
dev->dev.coherent_dma_mask = dev->dma_mask;
- device_register(&dev->dev);
+ if (!device_register(&dev->dev)) {
+ kfree(dev);
+ return NULL;
+ }
return dev;
}
@@ -850,8 +853,10 @@ static void print_parisc_device(struct parisc_device *dev)
*/
void init_parisc_bus(void)
{
- bus_register(&parisc_bus_type);
- device_register(&root);
+ if (!bus_register(&parisc_bus_type))
+ panic("Could not register PA-RISC bus type\n");
+ if (!device_register(&root))
+ panic("Could not register PA-RISC root device\n");
get_device(&root);
}