[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 3d569a4..2b257e4 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);
 }