From: Brian King Date: Thu, 29 Mar 2007 17:43:01 +0000 (-0500) Subject: [SCSI] ipr: Enable logging of debug error data for all devices X-Git-Tag: v2.6.22-rc1~1015^2~18 X-Git-Url: http://www.pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=cc9bd5d4256ecc1b6e0448febb4be29db1a91256;p=linux-2.6-omap-h63xx.git [SCSI] ipr: Enable logging of debug error data for all devices The ipr driver has a sysfs attribute which can be used to adjust the logging level of the driver for error events. The error response data for commands can be dumped by increasing the logging level of the ipr driver. This currently only works for JBOD passthrough devices. This patch enables this function for all devices, including RAID devices, to aid in debugging problems. Signed-off-by: Brian King Signed-off-by: James Bottomley --- diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c index 4fd6a3d81ff..5b6ffe18bc7 100644 --- a/drivers/scsi/ipr.c +++ b/drivers/scsi/ipr.c @@ -4473,6 +4473,9 @@ static void ipr_dump_ioasa(struct ipr_ioa_cfg *ioa_cfg, if (ioasa->ilid != 0) return; + if (!ipr_is_gscsi(res)) + return; + if (ipr_error_table[error_index].log_ioasa == 0) return; } @@ -4632,11 +4635,11 @@ static void ipr_erp_start(struct ipr_ioa_cfg *ioa_cfg, return; } - if (ipr_is_gscsi(res)) - ipr_dump_ioasa(ioa_cfg, ipr_cmd, res); - else + if (!ipr_is_gscsi(res)) ipr_gen_sense(ipr_cmd); + ipr_dump_ioasa(ioa_cfg, ipr_cmd, res); + switch (ioasc & IPR_IOASC_IOASC_MASK) { case IPR_IOASC_ABORTED_CMD_TERM_BY_HOST: if (ipr_is_naca_model(res))