From 5d49baeb8ec1a09285c19903ce24a429b39f1940 Mon Sep 17 00:00:00 2001 From: Changpeng Liu Date: Tue, 21 Jul 2020 01:59:24 -0400 Subject: [PATCH] iscsi: use default MaxRecvDataSegmentLength for login response data length Change-Id: I57205143fc29db96761791f2f6a20b4741875d58 Signed-off-by: Changpeng Liu Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3458 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Shuhei Matsumoto Reviewed-by: Tomasz Zawadzki Community-CI: Mellanox Build Bot --- lib/iscsi/iscsi.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/lib/iscsi/iscsi.c b/lib/iscsi/iscsi.c index d370adea3..febf4cac4 100644 --- a/lib/iscsi/iscsi.c +++ b/lib/iscsi/iscsi.c @@ -1224,7 +1224,6 @@ iscsi_op_login_rsp_init(struct spdk_iscsi_conn *conn, { struct iscsi_bhs_login_req *reqh; struct iscsi_bhs_login_rsp *rsph; - uint32_t alloc_len; rsph = (struct iscsi_bhs_login_rsp *)&rsp_pdu->bhs; rsph->opcode = ISCSI_OP_LOGIN_RSP; @@ -1232,21 +1231,15 @@ iscsi_op_login_rsp_init(struct spdk_iscsi_conn *conn, rsph->status_detail = ISCSI_LOGIN_ACCEPT; rsp_pdu->data_segment_len = 0; - /* Default MaxRecvDataSegmentLength - RFC3720(12.12) */ - if (conn->MaxRecvDataSegmentLength < 8192) { - alloc_len = 8192; - } else { - alloc_len = conn->MaxRecvDataSegmentLength; - } - - rsp_pdu->data = calloc(1, alloc_len); + /* The default MaxRecvDataSegmentLength 8192 is used during login. - RFC3720 */ + rsp_pdu->data = calloc(1, 8192); if (!rsp_pdu->data) { SPDK_ERRLOG("calloc() failed for data segment\n"); rsph->status_class = ISCSI_CLASS_TARGET_ERROR; rsph->status_detail = ISCSI_LOGIN_STATUS_NO_RESOURCES; return SPDK_ISCSI_LOGIN_ERROR_RESPONSE; } - rsp_pdu->data_buf_len = alloc_len; + rsp_pdu->data_buf_len = 8192; reqh = (struct iscsi_bhs_login_req *)&pdu->bhs; rsph->flags |= (reqh->flags & ISCSI_LOGIN_TRANSIT);