From b972751e20030716deb99510123ce3e461ebf291 Mon Sep 17 00:00:00 2001 From: Kulikov Vasiliy Date: Thu, 8 Jul 2010 23:43:20 -0700 Subject: [PATCH] --- yaml --- r: 203431 b: refs/heads/master c: 7cc36f6f7116918c8a8990a0f23f62d2288a81bf h: refs/heads/master i: 203429: f3398303cbc34f2a354e0d83f100f45f9301d569 203427: 708d3ef8e7b2627efb971c4dbf5d25429a457986 203423: bcfc0fd0627a8f6afe4573d294ddc6ed1f583077 v: v3 --- [refs] | 2 +- trunk/drivers/net/ll_temac_main.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 812fd682a479..419f9edd82da 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9f1e7582749980b51da67671b2536aadca3596b8 +refs/heads/master: 7cc36f6f7116918c8a8990a0f23f62d2288a81bf diff --git a/trunk/drivers/net/ll_temac_main.c b/trunk/drivers/net/ll_temac_main.c index b57d0ff52519..6ebf808bf440 100644 --- a/trunk/drivers/net/ll_temac_main.c +++ b/trunk/drivers/net/ll_temac_main.c @@ -1031,19 +1031,22 @@ temac_of_probe(struct of_device *op, const struct of_device_id *match) dev_dbg(&op->dev, "MEM base: %p\n", lp->sdma_regs); } else { dev_err(&op->dev, "unable to map DMA registers\n"); + of_node_put(np); goto err_iounmap; } } lp->rx_irq = irq_of_parse_and_map(np, 0); lp->tx_irq = irq_of_parse_and_map(np, 1); + + of_node_put(np); /* Finished with the DMA node; drop the reference */ + if ((lp->rx_irq == NO_IRQ) || (lp->tx_irq == NO_IRQ)) { dev_err(&op->dev, "could not determine irqs\n"); rc = -ENOMEM; goto err_iounmap_2; } - of_node_put(np); /* Finished with the DMA node; drop the reference */ /* Retrieve the MAC address */ addr = of_get_property(op->dev.of_node, "local-mac-address", &size);