ide: Handle irq disabling consistently
ide_timer_expiry() disables interrupt at function entry when acquiring hwif->lock. Before disabling the device interrupt it unlocks hwif->lock, but interrupts stay disabled. After the call to disable_irq() interrupts are disabled again, which is a pointless exercise. After the device irq handler has been invoked with interrupts disabled, hwif->lock is acquired again with spin_lock_irq() because the device irq handler might have reenabled interrupts. This is not documented and confusing for the casual reader. Remove the redundant local_irq_disable() and add a comment which explains why hwif->lock has to be reacquired with spin_lock_irq(). Signed-off-by: NSebastian Andrzej Siewior <bigeasy@linutronix.de> Acked-by: NDavid S. Miller <davem@davemloft.net> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
Showing
想要评论请 注册 或 登录