Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6e4803969ee93bef6aeeb6aff0f9214547d1bb1
Commit:     f6e4803969ee93bef6aeeb6aff0f9214547d1bb1
Parent:     35d55c943117864b9dff0253eb64672f048ac0f8
Author:     Wim Van Sebroeck <[EMAIL PROTECTED]>
AuthorDate: Sat Jan 27 21:58:08 2007 +0100
Committer:  Wim Van Sebroeck <[EMAIL PROTECTED]>
CommitDate: Sat Jan 27 21:58:08 2007 +0100

    [WATCHDOG] ib700wdt.c clean-up init and exit routines
    
    clean-up the init and exit routines so that they use
    the same sequence.
    
    Signed-off-by: Wim Van Sebroeck <[EMAIL PROTECTED]>
---
 drivers/char/watchdog/ib700wdt.c |   22 ++++++++++++++--------
 1 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/drivers/char/watchdog/ib700wdt.c b/drivers/char/watchdog/ib700wdt.c
index 5510db2..d379bf0 100644
--- a/drivers/char/watchdog/ib700wdt.c
+++ b/drivers/char/watchdog/ib700wdt.c
@@ -300,6 +300,10 @@ static struct notifier_block ibwdt_notifier = {
        .notifier_call = ibwdt_notify_sys,
 };
 
+/*
+ *     Init & exit routines
+ */
+
 static int __init ibwdt_init(void)
 {
        int res;
@@ -307,11 +311,6 @@ static int __init ibwdt_init(void)
        printk(KERN_INFO PFX "WDT driver for IB700 single board computer 
initialising.\n");
 
        spin_lock_init(&ibwdt_lock);
-       res = misc_register(&ibwdt_miscdev);
-       if (res) {
-               printk (KERN_ERR PFX "failed to register misc device\n");
-               goto out_nomisc;
-       }
 
 #if WDT_START != WDT_STOP
        if (!request_region(WDT_STOP, 1, "IB700 WDT")) {
@@ -326,13 +325,22 @@ static int __init ibwdt_init(void)
                res = -EIO;
                goto out_nostartreg;
        }
+
        res = register_reboot_notifier(&ibwdt_notifier);
        if (res) {
                printk (KERN_ERR PFX "Failed to register reboot notifier.\n");
                goto out_noreboot;
        }
+
+       res = misc_register(&ibwdt_miscdev);
+       if (res) {
+               printk (KERN_ERR PFX "failed to register misc device\n");
+               goto out_nomisc;
+       }
        return 0;
 
+out_nomisc:
+       unregister_reboot_notifier(&ibwdt_notifier);
 out_noreboot:
        release_region(WDT_START, 1);
 out_nostartreg:
@@ -340,8 +348,6 @@ out_nostartreg:
        release_region(WDT_STOP, 1);
 #endif
 out_nostopreg:
-       misc_deregister(&ibwdt_miscdev);
-out_nomisc:
        return res;
 }
 
@@ -350,10 +356,10 @@ ibwdt_exit(void)
 {
        misc_deregister(&ibwdt_miscdev);
        unregister_reboot_notifier(&ibwdt_notifier);
+       release_region(WDT_START,1);
 #if WDT_START != WDT_STOP
        release_region(WDT_STOP,1);
 #endif
-       release_region(WDT_START,1);
 }
 
 module_init(ibwdt_init);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to