diff options
author | Matthew Wilcox <matthew@wil.cx> | 2007-10-05 15:55:02 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.localdomain> | 2007-10-23 15:09:27 -0400 |
commit | 6c9746b363b8191587191518a65d5de93df80a92 (patch) | |
tree | f500193c07ad69d8f733586d694b160e3dff61f8 /drivers/scsi | |
parent | 71c222dc45ddf01b0dabb8a4d3e232e13e1452b5 (diff) |
[SCSI] sym53c8xx: Don't disable interrupts in the interrupt handler
Interrupts can't be re-entered, so it's sufficient to call spin_lock, not
spin_lock_irqsave().
Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/sym53c8xx_2/sym_glue.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/scsi/sym53c8xx_2/sym_glue.c b/drivers/scsi/sym53c8xx_2/sym_glue.c index 9fc2ae836257..b5e7c6478653 100644 --- a/drivers/scsi/sym53c8xx_2/sym_glue.c +++ b/drivers/scsi/sym53c8xx_2/sym_glue.c | |||
@@ -550,14 +550,13 @@ static int sym53c8xx_queue_command(struct scsi_cmnd *cmd, | |||
550 | */ | 550 | */ |
551 | static irqreturn_t sym53c8xx_intr(int irq, void *dev_id) | 551 | static irqreturn_t sym53c8xx_intr(int irq, void *dev_id) |
552 | { | 552 | { |
553 | unsigned long flags; | 553 | struct sym_hcb *np = dev_id; |
554 | struct sym_hcb *np = (struct sym_hcb *)dev_id; | ||
555 | 554 | ||
556 | if (DEBUG_FLAGS & DEBUG_TINY) printf_debug ("["); | 555 | if (DEBUG_FLAGS & DEBUG_TINY) printf_debug ("["); |
557 | 556 | ||
558 | spin_lock_irqsave(np->s.host->host_lock, flags); | 557 | spin_lock(np->s.host->host_lock); |
559 | sym_interrupt(np); | 558 | sym_interrupt(np); |
560 | spin_unlock_irqrestore(np->s.host->host_lock, flags); | 559 | spin_unlock(np->s.host->host_lock); |
561 | 560 | ||
562 | if (DEBUG_FLAGS & DEBUG_TINY) printf_debug ("]\n"); | 561 | if (DEBUG_FLAGS & DEBUG_TINY) printf_debug ("]\n"); |
563 | 562 | ||