qla2x00t-32gbit: Fix LUN parsing for ABORT_TASK_SET

When processing ABORT_TASK_SET, qla2xxx_scst passes the wrong LUN to
SCST, resulting in errors like:

sqatgt(7/0): Received task management cmd: lun=29, type=2, tag=0
sqatgt(7/0) ABORT_TS received.
[161]: scst: TM fn ABORT_TASK_SET/1 (mcmd 00000000d42b66dd, initiator c0:50:76:0b:e9:52:00:a2, target 21:00:00:24:ff:82:96:a5)
[10400]: scst: ***ERROR***: Corresponding device for LUN 7424 not found

(where 29 is the correct LUN and 7424 is bogus)

Fix by making LUN parsing for ABORT_TASK_SET the same as all the other
TMR cases.

Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
This commit is contained in:
Gleb Chesnokov
2023-01-13 10:51:24 +03:00
parent 3ba2549ac4
commit 0bfb746e52

View File

@@ -614,7 +614,7 @@ static int sqa_qla2xxx_handle_tmr(struct qla_tgt_mgmt_cmd *mcmd, u64 lun,
TRACE(TRACE_MGMT, "sqatgt(%ld/%d) ABORT_TS received.",
sess->tgt->vha->host_no, sess->tgt->vha->vp_idx);
rc = scst_rx_mgmt_fn_lun(scst_sess, SCST_ABORT_TASK_SET,
&lun, lun_size, SCST_ATOMIC, mcmd);
&sl, lun_size, SCST_ATOMIC, mcmd);
break;
case QLA_TGT_ABORT_ALL: // TMR_TARGET_COLD_RESET: