[SCSI] ipr: Fix ipr PCI hotplug hang with CDROM attach
Currently, during PCI hotplug remove, if the upper layer drivers of the attached devices send commands down as part of the remove action, like a CDROM, the hotplug action will hang forever due to the ipr driver returning SCSI_MLQUEUE_HOST_BUSY. Patch fixes this. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Esse commit está contido em:
commit de
James Bottomley
pai
380c3877ae
commit
5cbf5eaef7
@@ -5886,6 +5886,7 @@ static void __ipr_remove(struct pci_dev *pdev)
|
||||
|
||||
spin_unlock_irqrestore(ioa_cfg->host->host_lock, host_lock_flags);
|
||||
wait_event(ioa_cfg->reset_wait_q, !ioa_cfg->in_reset_reload);
|
||||
flush_scheduled_work();
|
||||
spin_lock_irqsave(ioa_cfg->host->host_lock, host_lock_flags);
|
||||
|
||||
spin_lock(&ipr_driver_lock);
|
||||
@@ -5916,8 +5917,6 @@ static void ipr_remove(struct pci_dev *pdev)
|
||||
|
||||
ENTER;
|
||||
|
||||
ioa_cfg->allow_cmds = 0;
|
||||
flush_scheduled_work();
|
||||
ipr_remove_trace_file(&ioa_cfg->host->shost_classdev.kobj,
|
||||
&ipr_trace_attr);
|
||||
ipr_remove_dump_file(&ioa_cfg->host->shost_classdev.kobj,
|
||||
|
||||
Referência em uma Nova Issue
Bloquear um usuário