Skip to content

Commit

Permalink
[libata] sata_nv: s/spin_lock_irqsave/spin_lock/ in irq handler
Browse files Browse the repository at this point in the history
We don't need to use the heavier spin lock in the irq handler.

It's quite possible we can do this in nv_generic_interrupt() as well,
but I didn't take the time to pursue that train of thought.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
  • Loading branch information
Jeff Garzik committed Jun 20, 2006
1 parent 5a44eff commit c5fa46e
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions drivers/scsi/sata_nv.c
Original file line number Diff line number Diff line change
Expand Up @@ -371,14 +371,13 @@ static irqreturn_t nv_nf2_interrupt(int irq, void *dev_instance,
struct pt_regs *regs)
{
struct ata_host_set *host_set = dev_instance;
unsigned long flags;
u8 irq_stat;
irqreturn_t ret;

spin_lock_irqsave(&host_set->lock, flags);
spin_lock(&host_set->lock);
irq_stat = inb(host_set->ports[0]->ioaddr.scr_addr + NV_INT_STATUS);
ret = nv_do_interrupt(host_set, irq_stat);
spin_unlock_irqrestore(&host_set->lock, flags);
spin_unlock(&host_set->lock);

return ret;
}
Expand All @@ -387,14 +386,13 @@ static irqreturn_t nv_ck804_interrupt(int irq, void *dev_instance,
struct pt_regs *regs)
{
struct ata_host_set *host_set = dev_instance;
unsigned long flags;
u8 irq_stat;
irqreturn_t ret;

spin_lock_irqsave(&host_set->lock, flags);
spin_lock(&host_set->lock);
irq_stat = readb(host_set->mmio_base + NV_INT_STATUS_CK804);
ret = nv_do_interrupt(host_set, irq_stat);
spin_unlock_irqrestore(&host_set->lock, flags);
spin_unlock(&host_set->lock);

return ret;
}
Expand Down

0 comments on commit c5fa46e

Please sign in to comment.