aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wilcox <matthew@wil.cx>2007-10-05 15:55:02 -0400
committerJames Bottomley <jejb@mulgrave.localdomain>2007-10-23 15:09:27 -0400
commit6c9746b363b8191587191518a65d5de93df80a92 (patch)
treef500193c07ad69d8f733586d694b160e3dff61f8
parent71c222dc45ddf01b0dabb8a4d3e232e13e1452b5 (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>
-rw-r--r--drivers/scsi/sym53c8xx_2/sym_glue.c7
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 */
551static irqreturn_t sym53c8xx_intr(int irq, void *dev_id) 551static 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