Marek Michalkiewicz wrote:
> +static int
> +advwdt_close(struct inode *inode, struct file *file)
> +{
> +       lock_kernel();
> +       if (MINOR(inode->i_rdev) == WATCHDOG_MINOR) {
> +               spin_lock(&advwdt_lock);
> +#ifndef CONFIG_WATCHDOG_NOWAYOUT
> +               inb_p(WDT_STOP);
> +#endif
> +               advwdt_is_open = 0;
> +               spin_unlock(&advwdt_lock);
> +       }
> +       unlock_kernel();
> +       return 0;
> +}

Why is lock_kernel necessary?


> +static int __init
> +advwdt_init(void)
> +{
> +       printk("WDT driver for Advantech single board computer initialising.\n");
> +
> +       spin_lock_init(&advwdt_lock);
> +       misc_register(&advwdt_miscdev);

check return code for error


> +#if WDT_START != WDT_STOP
> +       request_region(WDT_STOP, 1, "Advantech WDT");
> +#endif
> +       request_region(WDT_START, 1, "Advantech WDT");

check return..


> +       register_reboot_notifier(&advwdt_notifier);

ditto



-- 
Jeff Garzik       | "You see, in this world there's two kinds of
Building 1024     |  people, my friend: Those with loaded guns
MandrakeSoft      |  and those who dig. You dig."  --Blondie
-
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/

Reply via email to