]>
Commit | Line | Data |
---|---|---|
2cb7cef9 BS |
1 | From 5bff55db3dc4d659f46b4d2fce2f61c1964c2762 Mon Sep 17 00:00:00 2001 |
2 | From: Michael Reed <mdr@sgi.com> | |
3 | Date: Fri, 24 Oct 2008 15:13:47 -0700 | |
4 | Subject: revert - SCSI: qla2xxx: Return a FAILED status when abort mailbox-command fails. | |
5 | ||
6 | ------------------- | |
7 | This is a revert of this patch that is included in 2.6.27.7 | |
8 | as a further qla2xxx driver update in the series conflicts with this | |
9 | - gregkh | |
10 | ------------------- | |
11 | ||
12 | From: Michael Reed <mdr@sgi.com> | |
13 | ||
14 | commit 5bff55db3dc4d659f46b4d2fce2f61c1964c2762 upstream. | |
15 | ||
16 | Mike Reed noted | |
17 | (https://bugzilla.novell.com/show_bug.cgi?id=421330) that the | |
18 | driver was incorrectly returning a SUCCESS status if the driver's | |
19 | request to the firmware to abort a command failed. By doing so, | |
20 | the mid-layer believed, incorrectly, that the command has | |
21 | completed and has been returned (ultimately clearing | |
22 | scsi_cmnd.request_buffer) yet the driver still has the command. | |
23 | What should correctly happen is a mid-layer escalation | |
24 | (device-reset, etc.) of recovery during which the driver will | |
25 | eventually return the outstanding commands to the mid-layer. | |
26 | ||
27 | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> | |
28 | Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com> | |
29 | Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> | |
30 | ||
31 | --- | |
32 | ||
33 | --- | |
34 | drivers/scsi/qla2xxx/qla_os.c | 1 - | |
35 | 1 file changed, 1 deletion(-) | |
36 | ||
37 | --- a/drivers/scsi/qla2xxx/qla_os.c | |
38 | +++ b/drivers/scsi/qla2xxx/qla_os.c | |
39 | @@ -730,7 +730,6 @@ qla2xxx_eh_abort(struct scsi_cmnd *cmd) | |
40 | if (ha->isp_ops->abort_command(ha, sp)) { | |
41 | DEBUG2(printk("%s(%ld): abort_command " | |
42 | "mbx failed.\n", __func__, ha->host_no)); | |
43 | - ret = FAILED; | |
44 | } else { | |
45 | DEBUG3(printk("%s(%ld): abort_command " | |
46 | "mbx success.\n", __func__, ha->host_no)); |