i have basic query
whats the difference between spin_lock, spin_lock_irq and spin_lock_irqsave
similarly corresponding unlock functions.
if we do seomthing like this :
spin_lock_irqsave(&q1, flag1);
spin_lock_irqsave(&q2, flag2);
spin_unlock_irqrestore(flag1); <------- here its nullifies the irqs saving for second lock???
spin_unlock_irqrestore(flag2);