title: Interrupt on a processor while another process is spinning for lock
body: <p>There is one spin lock in my code which is shared between two threads. When one thread is holding the lock and the other thread is trying to get the lock, the second thread will keep spinning on a processor. So what will happen if an interrupt happens on the processor where the thread is spinning for the lock?</p>
  
  <p>I have used <code>spin_lock()</code> to take the lock and not <code>spin_lock_irqsave()</code> as I dont want to disable interrupt on local processor.</p>
  
  <p>As I checked the code of the <code>spin_lock()</code> function in the kernel, I find that preemption is disabled by default and not any IRQ. So I assume the interrupt will get priority over the spinning thread. So what will be the meaning of spin lock being a non-sleeping lock?</p>