git: 49f4b33f9e16 - stable/13 - Exclude reserved iSCSI Initiator Task Tag.
Alexander Motin
mav at FreeBSD.org
Tue Feb 23 00:32:14 UTC 2021
The branch stable/13 has been updated by mav:
URL: https://cgit.FreeBSD.org/src/commit/?id=49f4b33f9e1667f51a2d55e39785ce50c2cda950
commit 49f4b33f9e1667f51a2d55e39785ce50c2cda950
Author: Alexander Motin <mav at FreeBSD.org>
AuthorDate: 2021-01-24 19:23:04 +0000
Commit: Alexander Motin <mav at FreeBSD.org>
CommitDate: 2021-02-23 00:31:52 +0000
Exclude reserved iSCSI Initiator Task Tag.
RFC 7143 (11.2.1.8):
An ITT value of 0xffffffff is reserved and MUST NOT be assigned for a
task by the initiator. The only instance in which it may be seen on
the wire is in a target-initiated NOP-In PDU (Section 11.19) and in
the initiator response to that PDU, if necessary.
MFC after: 1 month
---
sys/dev/iscsi/iscsi.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/sys/dev/iscsi/iscsi.c b/sys/dev/iscsi/iscsi.c
index eaaf84de9594..5e6c80255bff 100644
--- a/sys/dev/iscsi/iscsi.c
+++ b/sys/dev/iscsi/iscsi.c
@@ -2194,6 +2194,8 @@ iscsi_action_abort(struct iscsi_session *is, union ccb *ccb)
}
initiator_task_tag = is->is_initiator_task_tag++;
+ if (initiator_task_tag == 0xffffffff)
+ initiator_task_tag = is->is_initiator_task_tag++;
io = iscsi_outstanding_add(is, request, NULL, &initiator_task_tag);
if (io == NULL) {
@@ -2254,6 +2256,9 @@ iscsi_action_scsiio(struct iscsi_session *is, union ccb *ccb)
}
initiator_task_tag = is->is_initiator_task_tag++;
+ if (initiator_task_tag == 0xffffffff)
+ initiator_task_tag = is->is_initiator_task_tag++;
+
io = iscsi_outstanding_add(is, request, ccb, &initiator_task_tag);
if (io == NULL) {
icl_pdu_free(request);
More information about the dev-commits-src-all
mailing list