[PATCH] powerpc: remove useless spinlock from mpc83xx watchdog

Marcelo Tosatti marcelo.tosatti at cyclades.com
Fri Jan 20 03:48:11 EST 2006


On Thu, Jan 19, 2006 at 09:49:16AM +0000, Alan Cox wrote:
> On Iau, 2006-01-19 at 00:58 -0600, Kumar Gala wrote:
> > Since we can only open the watchdog once having a spinlock to protect
> > multiple access is pointless.
> > 
> > Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
> 
> NAK
> 
> This is a common mistake.
> 
> open is called on the open() call and is indeed in this case 'single
> open', but file handles can be inherited and many users may have access
> to a single file handle.
> 
> eg
> 
> 	f = open("/dev/watchdog", O_RDWR);
> 	fork();
> 	while(1) {
> 		write(f, "Boing", 5);
> 	}

Oops.

At least 50% of the watchdog drivers rely solely on the "wdt_is_open"
atomic variable and are broken with respect to synchronization.



More information about the Linuxppc-embedded mailing list