On Mon, Dec 23, 2013 at 9:27 AM, Oleg Nesterov <oleg@xxxxxxxxxx> wrote: > > In short, is this code > > spinlock_t LOCK; > unsigned long FLAGS; > > void my_lock(void) > { > spin_lock_irqsave(&LOCK, FLAGS); > } > > void my_unlock(void) > { > spin_unlock_irqrestore(&LOCK, FLAGS); > } > > correct or not? Hell no. "flags" needs to be a thread-private variable, or at least protected some way (ie the above could work if everything is inside a bigger lock, to serialize access to FLAGS). Linus -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html