* [PATCH 3/5] ipr fix for ioa reset timeout oops
@ 2004-05-23 0:50 Brian King
0 siblings, 0 replies; only message in thread
From: Brian King @ 2004-05-23 0:50 UTC (permalink / raw)
To: James Bottomley; +Cc: linux-scsi
[-- Attachment #1: Type: text/plain, Size: 64 bytes --]
--
Brian King
eServer Storage I/O
IBM Linux Technology Center
[-- Attachment #2: ipr_ioa_reset_timeout_oops-3.patch --]
[-- Type: text/plain, Size: 1117 bytes --]
This patch fixes an oops discovered in test which can occur
on bad hardware if the ipr adapter times out coming operational.
---
linux-2.6.6-bjking1/drivers/scsi/ipr.c | 2 ++
1 files changed, 2 insertions(+)
diff -puN drivers/scsi/ipr.c~ipr_ioa_reset_timeout_oops drivers/scsi/ipr.c
--- linux-2.6.6/drivers/scsi/ipr.c~ipr_ioa_reset_timeout_oops 2004-05-22 14:49:44.000000000 -0500
+++ linux-2.6.6-bjking1/drivers/scsi/ipr.c 2004-05-22 17:17:47.000000000 -0500
@@ -3179,6 +3179,7 @@ static irqreturn_t ipr_handle_other_inte
writel(IPR_PCII_IOA_TRANS_TO_OPER, ioa_cfg->regs.clr_interrupt_reg);
int_reg = readl(ioa_cfg->regs.sense_interrupt_reg);
+ list_del(&ioa_cfg->reset_cmd->queue);
del_timer(&ioa_cfg->reset_cmd->timer);
ipr_reset_ioa_job(ioa_cfg->reset_cmd);
} else {
@@ -4806,6 +4807,7 @@ static int ipr_reset_enable_ioa(struct i
ipr_cmd->timer.expires = jiffies + IPR_OPERATIONAL_TIMEOUT;
ipr_cmd->timer.function = (void (*)(unsigned long))ipr_timeout;
add_timer(&ipr_cmd->timer);
+ list_add_tail(&ipr_cmd->queue, &ioa_cfg->pending_q);
LEAVE;
return IPR_RC_JOB_RETURN;
_
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-05-23 0:50 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-23 0:50 [PATCH 3/5] ipr fix for ioa reset timeout oops Brian King
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox