[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