powerpc/macio: Don't dereference pointer before null check
authorAndreas Schwab <schwab@linux-m68k.org>
Tue, 1 Jun 2010 05:58:40 +0000 (05:58 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 2 Jun 2010 07:50:36 +0000 (17:50 +1000)
Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
drivers/macintosh/macio_asic.c

index 9714780..40390ac 100644 (file)
@@ -492,8 +492,8 @@ static void macio_pci_add_devices(struct macio_chip *chip)
        }
 
        /* Add media bay devices if any */
-       pnode = mbdev->ofdev.dev.of_node;
-       if (mbdev)
+       if (mbdev) {
+               pnode = mbdev->ofdev.dev.of_node;
                for (np = NULL; (np = of_get_next_child(pnode, np)) != NULL;) {
                        if (macio_skip_device(np))
                                continue;
@@ -502,10 +502,11 @@ static void macio_pci_add_devices(struct macio_chip *chip)
                                                 mbdev,  root_res) == NULL)
                                of_node_put(np);
                }
+       }
 
        /* Add serial ports if any */
-       pnode = sdev->ofdev.dev.of_node;
        if (sdev) {
+               pnode = sdev->ofdev.dev.of_node;
                for (np = NULL; (np = of_get_next_child(pnode, np)) != NULL;) {
                        if (macio_skip_device(np))
                                continue;