Commit a6ceda74 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by David S. Miller

[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: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c45ec656
...@@ -2068,14 +2068,12 @@ static int esp_reset(struct scsi_cmnd *SCptr) ...@@ -2068,14 +2068,12 @@ static int esp_reset(struct scsi_cmnd *SCptr)
{ {
struct esp *esp = (struct esp *) SCptr->device->host->hostdata; struct esp *esp = (struct esp *) SCptr->device->host->hostdata;
spin_lock_irq(esp->ehost->host_lock);
(void) esp_do_resetbus(esp); (void) esp_do_resetbus(esp);
spin_unlock_irq(esp->ehost->host_lock); spin_unlock_irq(esp->ehost->host_lock);
wait_event(esp->reset_queue, (esp->resetting_bus == 0)); wait_event(esp->reset_queue, (esp->resetting_bus == 0));
spin_lock_irq(esp->ehost->host_lock);
return SUCCESS; return SUCCESS;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment