[WATCHDOG] s3c2410_wdt - initialize watchdog irq resource
authorArnaud Patard <arnaud.patard@rtp-net.org>
Sat, 5 May 2007 13:53:15 +0000 (15:53 +0200)
committerWim Van Sebroeck <wim@iguana.be>
Sun, 6 May 2007 19:36:28 +0000 (19:36 +0000)
In the error path of s3c2410wdt_probe() and in s3c2410wdt_remove(),
we're using wdt_irq without initialising it, leading to a oops.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/char/watchdog/s3c2410_wdt.c

index dff6cb5dc9a7a0700c6dc09f2110736505701b06..20fa29ca7404655ade0c16d8d04bcef29cfd7d13 100644 (file)
@@ -379,14 +379,14 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
 
        DBG("probe: mapped wdt_base=%p\n", wdt_base);
 
-       res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
-       if (res == NULL) {
+       wdt_irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
+       if (wdt_irq == NULL) {
                printk(KERN_INFO PFX "failed to get irq resource\n");
                ret = -ENOENT;
                goto err_map;
        }
 
-       ret = request_irq(res->start, s3c2410wdt_irq, 0, pdev->name, pdev);
+       ret = request_irq(wdt_irq->start, s3c2410wdt_irq, 0, pdev->name, pdev);
        if (ret != 0) {
                printk(KERN_INFO PFX "failed to install irq (%d)\n", ret);
                goto err_map;