Re: [PATCH 5/5] ioremap balanced with iounmap for drivers/char/watchdog/s3c2410_wdt.c

From: Ben Dooks
Date: Sun Nov 12 2006 - 08:30:17 EST


On Fri, Oct 06, 2006 at 01:40:20PM -0700, Andrew Morton wrote:
> On Fri, 06 Oct 2006 10:27:07 +0530
> Amol Lad <amol@xxxxxxxxxxxxxxxxxxx> wrote:
>
> > Signed-off-by: Amol Lad <amol@xxxxxxxxxxxxxxxxxxx>
> > ---
> > s3c2410_wdt.c | 5 +++++
> > 1 files changed, 5 insertions(+)
> > ---
> > diff -uprN -X linux-2.6.19-rc1-orig/Documentation/dontdiff linux-2.6.19-rc1-orig/drivers/char/watchdog/s3c2410_wdt.c linux-2.6.19-rc1/drivers/char/watchdog/s3c2410_wdt.c
> > --- linux-2.6.19-rc1-orig/drivers/char/watchdog/s3c2410_wdt.c 2006-10-05 14:00:43.000000000 +0530
> > +++ linux-2.6.19-rc1/drivers/char/watchdog/s3c2410_wdt.c 2006-10-05 14:50:00.000000000 +0530
> > @@ -381,18 +381,21 @@ static int s3c2410wdt_probe(struct platf
> > res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
> > if (res == NULL) {
> > printk(KERN_INFO PFX "failed to get irq resource\n");
> > + iounmap(wdt_base);
> > return -ENOENT;
> > }
> >
> > ret = request_irq(res->start, s3c2410wdt_irq, 0, pdev->name, pdev);
> > if (ret != 0) {
> > printk(KERN_INFO PFX "failed to install irq (%d)\n", ret);
> > + iounmap(wdt_base);
> > return ret;
> > }
> >
> > wdt_clock = clk_get(&pdev->dev, "watchdog");
> > if (wdt_clock == NULL) {
> > printk(KERN_INFO PFX "failed to find watchdog clock source\n");
> > + iounmap(wdt_base);
> > return -ENOENT;
> > }
> >
> > @@ -416,6 +419,7 @@ static int s3c2410wdt_probe(struct platf
> > if (ret) {
> > printk (KERN_ERR PFX "cannot register miscdev on minor=%d (%d)\n",
> > WATCHDOG_MINOR, ret);
> > + iounmap(wdt_base);
> > return ret;
> > }
> >
>
> barf. That function has to set the record for the
> number-of-return-statements-per-line. There are good reasons why we prefer
> to have a single return point at which to handle all the error unwinding,
> and the above patch illustrates one of them.

I'll try and sort this out once 2.6.19 is out.

--
Ben (ben@xxxxxxxxx, http://www.fluff.org/)

'a smiley only costs 4 bytes'
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/