Skip to contentSkip to conversation

Error are logged when application issues illegal request

PATCH In review [email protected] 2 participants 3 messages Sep 25, 2014 – Sep 26, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

v2 cover Error are logged when application issues illegal request

Hi Christoph,

Sorry! This patch includes the fix in ipr.h. I built this patch in the latest scsi tree.

Thanks,
Wendy

#1 lore raw

PATCH v2 1/1 ipr: Errors are logged when application issues illegal request

Failing Device information are logged when IOA firmware detected these illegal request such as IOA firmware doesn't support inquiry with page code 2. The patch fixes the issue.

---
 drivers/scsi/ipr.c |   10 ++++++++++
 drivers/scsi/ipr.h |    1 +
 2 files changed, 11 insertions(+)
drivers/scsi/ipr.c +10 -0
Index: b/drivers/scsi/ipr.c
===================================================================
@@ -2440,6 +2440,7 @@ static void ipr_handle_log_data(struct i
 {
 	u32 ioasc;
 	int error_index;
+	struct ipr_hostrcb_type_21_error *error;
 
 	if (hostrcb->hcam.notify_type != IPR_HOST_RCB_NOTIF_TYPE_ERROR_LOG_ENTRY)
 		return;
@@ -2464,6 +2465,15 @@ static void ipr_handle_log_data(struct i
 	if (!ipr_error_table[error_index].log_hcam)
 		return;
 
+	if (ioasc == IPR_IOASC_HW_CMD_FAILED &&
+	    hostrcb->hcam.overlay_id == IPR_HOST_RCB_OVERLAY_ID_21) {
+		error = &hostrcb->hcam.u.error64.u.type_21_error;
+
+		if (((be32_to_cpu(error->sense_data[0]) & 0x0000ff00) >> 8) == ILLEGAL_REQUEST &&
+			ioa_cfg->log_level <= IPR_DEFAULT_LOG_LEVEL)
+				return;
+	}
+
 	ipr_hcam_err(hostrcb, "%s\n", ipr_error_table[error_index].error);
 
 	/* Set indication we have logged an error */
drivers/scsi/ipr.h +1 -0
Index: b/drivers/scsi/ipr.h
===================================================================
@@ -130,6 +130,7 @@
 #define IPR_IOASC_HW_DEV_BUS_STATUS			0x04448500
 #define	IPR_IOASC_IOASC_MASK			0xFFFFFF00
 #define	IPR_IOASC_SCSI_STATUS_MASK		0x000000FF
+#define IPR_IOASC_HW_CMD_FAILED			0x046E0000
 #define IPR_IOASC_IR_INVALID_REQ_TYPE_OR_PKT	0x05240000
 #define IPR_IOASC_IR_RESOURCE_HANDLE		0x05250000
 #define IPR_IOASC_IR_NO_CMDS_TO_2ND_IOA		0x05258100