From 1b69f645f224d9bab7fd5988aca818c9445f11d0 Mon Sep 17 00:00:00 2001 From: "brking@us.ibm.com" Date: Mon, 2 May 2005 19:50:59 -0500 Subject: [SCSI] ipr: Array error logging fix Bugme 4547. The following patch fixes a bug in ipr's error logging. Signed-off-by: Brian King Signed-off-by: James Bottomley --- drivers/scsi/ipr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/scsi/ipr.c') diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c index 5441531c0d8e..4ba9e886346d 100644 --- a/drivers/scsi/ipr.c +++ b/drivers/scsi/ipr.c @@ -1053,7 +1053,7 @@ static void ipr_log_array_error(struct ipr_ioa_cfg *ioa_cfg, array_entry->dev_res_addr.lun); } - if (array_entry->dev_res_addr.bus >= IPR_MAX_NUM_BUSES) { + if (array_entry->expected_dev_res_addr.bus >= IPR_MAX_NUM_BUSES) { ipr_err("Expected Location: unknown\n"); } else { ipr_err("Expected Location: %d:%d:%d:%d\n", -- cgit v1.2.2 From 5cbf5eaef7e4430f60844748fd33e22a5fb15167 Mon Sep 17 00:00:00 2001 From: "brking@us.ibm.com" Date: Mon, 2 May 2005 19:50:47 -0500 Subject: [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 Signed-off-by: James Bottomley --- drivers/scsi/ipr.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'drivers/scsi/ipr.c') diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c index 4ba9e886346d..a3d9cf675681 100644 --- a/drivers/scsi/ipr.c +++ b/drivers/scsi/ipr.c @@ -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, -- cgit v1.2.2