Commit 1bcc46cb authored by Chad Dupuis's avatar Chad Dupuis Committed by James Bottomley

[SCSI] qla2xxx: Reject loopback request if one is already in progress.

If another function on the port has initiated a loopback operation do not
process the current request.
Signed-off-by: default avatarChad Dupuis <chad.dupuis@qlogic.com>
Signed-off-by: default avatarSaurav Kashyap <saurav.kashyap@qlogic.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent 37f489b5
...@@ -746,6 +746,14 @@ qla2x00_process_loopback(struct fc_bsg_job *bsg_job) ...@@ -746,6 +746,14 @@ qla2x00_process_loopback(struct fc_bsg_job *bsg_job)
goto done_free_dma_rsp; goto done_free_dma_rsp;
} }
if ((config[0] & INTERNAL_LOOPBACK_MASK) != 0) {
ql_dbg(ql_dbg_user, vha, 0x70c4,
"Loopback operation already in "
"progress.\n");
rval = -EAGAIN;
goto done_free_dma_rsp;
}
ql_dbg(ql_dbg_user, vha, 0x70c0, ql_dbg(ql_dbg_user, vha, 0x70c0,
"elreq.options=%04x\n", elreq.options); "elreq.options=%04x\n", elreq.options);
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
* | Async Events | 0x5071 | 0x502b-0x502f | * | Async Events | 0x5071 | 0x502b-0x502f |
* | | | 0x5047,0x5052 | * | | | 0x5047,0x5052 |
* | Timer Routines | 0x6011 | | * | Timer Routines | 0x6011 | |
* | User Space Interactions | 0x70c3 | 0x7018,0x702e, | * | User Space Interactions | 0x70c4 | 0x7018,0x702e, |
* | | | 0x7020,0x7024, | * | | | 0x7020,0x7024, |
* | | | 0x7039,0x7045, | * | | | 0x7039,0x7045, |
* | | | 0x7073-0x7075, | * | | | 0x7073-0x7075, |
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment