All of lore.kernel.org
 help / color / mirror / Atom feed
* fix cciss locking bug.
@ 2007-12-12  3:44 Dave Jones
  0 siblings, 0 replies; only message in thread
From: Dave Jones @ 2007-12-12  3:44 UTC (permalink / raw)
  To: linux-scsi; +Cc: Mike Miller

do_cciss_intr takes the controller lock on entry,
and if something goes wrong, it calls fail_all_cmds
which tries to take the same lock.

Signed-off-by: Dave Jones <davej@redhat.com>

diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
index 7d70496..1c57583 100644
--- a/drivers/block/cciss.c
+++ b/drivers/block/cciss.c
@@ -2756,6 +2756,7 @@ static irqreturn_t do_cciss_intr(int irq, void *dev_id)
 					printk(KERN_WARNING
 					       "cciss: controller cciss%d failed, stopping.\n",
 					       h->ctlr);
+					spin_unlock_irqrestore(CCISS_LOCK(h->ctlr), flags);
 					fail_all_cmds(h->ctlr);
 					return IRQ_HANDLED;
 				}

-- 
http://www.codemonkey.org.uk

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2007-12-12  3:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-12  3:44 fix cciss locking bug Dave Jones

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.