[PA-RISC] Fix must_check warnings in drivers.c
authorMatthew Wilcox <matthew@wil.cx>
Wed, 4 Oct 2006 19:37:41 +0000 (13:37 -0600)
committerMatthew Wilcox <willy@hera.kernel.org>
Thu, 5 Oct 2006 01:48:18 +0000 (01:48 +0000)
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>
arch/parisc/kernel/drivers.c

index 3d569a485a1a6540735f282eb87879705fd4574c..2b257e4f17df28da51a9495d4beeaf9efcf72885 100644 (file)
@@ -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);
 }