Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 25ff3780 authored by Ben Dooks's avatar Ben Dooks Committed by Wim Van Sebroeck
Browse files

[WATCHDOG] s3c24XX nowayout



If the driver is not configured for `no way out`,
then the open method should not automatically allow
the setting of allow_close to CLOSE_STATE_ALLOW.

The setting of allow_close nullifies the use of
the magic close via the write path. It means that
in the default state, the watchdog will shut-down
even if the magic close has not been issued.

Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
parent 65a64ec3
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -213,11 +213,10 @@ static int s3c2410wdt_open(struct inode *inode, struct file *file)
	if(down_trylock(&open_lock))
		return -EBUSY;

	if (nowayout) {
	if (nowayout)
		__module_get(THIS_MODULE);
	} else {
		allow_close = CLOSE_STATE_ALLOW;
	}

	allow_close = CLOSE_STATE_NOT;

	/* start the timer */
	s3c2410wdt_start();
@@ -230,6 +229,7 @@ static int s3c2410wdt_release(struct inode *inode, struct file *file)
	 *	Shut off the timer.
	 * 	Lock it in if it's a module and we set nowayout
	 */

	if (allow_close == CLOSE_STATE_ALLOW) {
		s3c2410wdt_stop();
	} else {