Re: PATCH: SBC EPX does not check/claim I/O ports it uses (2nd Edition)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Alan Cox wrote:
>Signed-off-by: Alan Cox <[email protected]>
>
>--- linux.vanilla-2.6.16-rc1/drivers/char/watchdog/sbc_epx_c3.c	2006-01-17 15:52:53.000000000 +0000
>+++ linux-2.6.16-rc1/drivers/char/watchdog/sbc_epx_c3.c	2006-01-17 18:27:39.149607944 +0000
>@@ -25,6 +25,7 @@
> #include <linux/notifier.h>
> #include <linux/reboot.h>
> #include <linux/init.h>
>+#include <linux/ioport.h>
> #include <asm/uaccess.h>
> #include <asm/io.h>
> 
>@@ -180,12 +181,15 @@
> static int __init watchdog_init(void)
> {
> 	int ret;
>+	
>+	if (!request_region(EPXC3_WATCHDOG_CTL_REG, 2, "epxc3_watchdog"))
>+		return -EBUSY;
> 
> 	ret = register_reboot_notifier(&epx_c3_notifier);
> 	if (ret) {
> 		printk(KERN_ERR PFX "cannot register reboot notifier "
> 			"(err=%d)\n", ret);
>-		return ret;
>+		goto out;
> 	}
> 
> 	ret = misc_register(&epx_c3_miscdev);
>@@ -193,12 +197,16 @@
> 		printk(KERN_ERR PFX "cannot register miscdev on minor=%d "
> 			"(err=%d)\n", WATCHDOG_MINOR, ret);
> 		unregister_reboot_notifier(&epx_c3_notifier);
>-		return ret;
>+		goto out;
> 	}
> 
> 	printk(banner);
> 
> 	return 0;
>+
>+out:
>+	release_region(EPXC3_WATCHDOG_CTL_REG, 2);
>+	return ret;
> }
> 
> static void __exit watchdog_exit(void)
But now, you forgot to add release_region in this (exit) function :)?

regards,
-- 
Jiri Slaby         www.fi.muni.cz/~xslaby
\_.-^-._   [email protected]   _.-^-._/
B67499670407CE62ACC8 22A032CC55C339D47A7E
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux