Re: [PATCH] pcxx: replace cli()/sti() with spin_lock_irqsave()/spin_unlock_irqrestore()

From: Jim Nelson
Date: Mon Dec 20 2004 - 16:53:41 EST


Alan Cox wrote:
On Llu, 2004-12-20 at 14:59, Alan Cox wrote:

On Gwe, 2004-12-17 at 22:34, James Nelson wrote:

- save_flags(flags);
- cli();
+ spin_lock_irqsave(&pcxx_lock, flags);
del_timer_sync(&pcxx_timer);

Not safe if the lock is grabbed by the timer between the lock and the
irqsave as it will spin on another cpu and the timer delete will never
finish.


Error between brain and keyboard

Between the lock and the timer_delete of course


Right.

Go ahead and ignore that set of cli()/sti() patches - I'll have to take them a little slower, checking for potential deadlocks and other nastiness.

I'll try again in a week or so - gotta finish "The Design of the Unix Operating System" first. Love early Xmas presents from my aunt, the mainframe systems programmer... :)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/