From: Christoph Hellwig Date: Wed, 22 Feb 2006 22:35:52 +0000 (-0800) Subject: [SCSI] esp: fix eh locking X-Git-Tag: v2.6.16-rc5~59^2 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a6ceda7457b2303dcb07d3c472b25d52bbdb5a29;p=linux-2.6 [SCSI] esp: fix eh locking esp_reset didn't get fixed when the EH locking changed. ->eh_bus_reset_handler is now called without the host lock held. Signed-off-by: Christoph Hellwig Signed-off-by: David S. Miller --- diff --git a/drivers/scsi/esp.c b/drivers/scsi/esp.c index f6900538be..87a8c3d207 100644 --- a/drivers/scsi/esp.c +++ b/drivers/scsi/esp.c @@ -2068,14 +2068,12 @@ static int esp_reset(struct scsi_cmnd *SCptr) { struct esp *esp = (struct esp *) SCptr->device->host->hostdata; + spin_lock_irq(esp->ehost->host_lock); (void) esp_do_resetbus(esp); - spin_unlock_irq(esp->ehost->host_lock); wait_event(esp->reset_queue, (esp->resetting_bus == 0)); - spin_lock_irq(esp->ehost->host_lock); - return SUCCESS; }