diff --git a/lib/iscsi/iscsi.c b/lib/iscsi/iscsi.c index a5b330de9..1e566b8c4 100644 --- a/lib/iscsi/iscsi.c +++ b/lib/iscsi/iscsi.c @@ -517,7 +517,7 @@ spdk_iscsi_read_pdu(struct spdk_iscsi_conn *conn, struct spdk_iscsi_pdu **_pdu) } else if (pdu->bhs.opcode == ISCSI_OP_SCSI_DATAOUT) { max_segment_len = spdk_get_data_out_buffer_size(); } else if (pdu->bhs.opcode == ISCSI_OP_NOPOUT) { - max_segment_len = g_spdk_iscsi.MaxRecvDataSegmentLength; + max_segment_len = SPDK_ISCSI_MAX_RECV_DATA_SEGMENT_LENGTH; } else { max_segment_len = spdk_get_immediate_data_buffer_size(); } @@ -1118,10 +1118,9 @@ spdk_iscsi_check_values(struct spdk_iscsi_conn *conn) conn->sess->MaxBurstLength); return -1; } - if (conn->sess->FirstBurstLength > g_spdk_iscsi.FirstBurstLength) { + if (conn->sess->FirstBurstLength > SPDK_ISCSI_FIRST_BURST_LENGTH) { SPDK_ERRLOG("FirstBurstLength(%d) > iSCSI target restriction(%d)\n", - conn->sess->FirstBurstLength, - g_spdk_iscsi.FirstBurstLength); + conn->sess->FirstBurstLength, SPDK_ISCSI_FIRST_BURST_LENGTH); return -1; } if (conn->sess->MaxBurstLength > 0x00ffffff) { @@ -3504,7 +3503,7 @@ spdk_add_transfer_task(struct spdk_iscsi_conn *conn, transfer_len = task->scsi.transfer_len; data_len = spdk_iscsi_task_get_pdu(task)->data_segment_len; max_burst_len = conn->sess->MaxBurstLength; - segment_len = g_spdk_iscsi.MaxRecvDataSegmentLength; + segment_len = SPDK_ISCSI_MAX_RECV_DATA_SEGMENT_LENGTH; data_out_req = 1 + (transfer_len - data_len - 1) / segment_len; task->data_out_cnt = data_out_req; @@ -4491,8 +4490,8 @@ spdk_create_iscsi_sess(struct spdk_iscsi_conn *conn, sess->DefaultTime2Wait = g_spdk_iscsi.DefaultTime2Wait; sess->DefaultTime2Retain = g_spdk_iscsi.DefaultTime2Retain; - sess->FirstBurstLength = g_spdk_iscsi.FirstBurstLength; - sess->MaxBurstLength = g_spdk_iscsi.MaxBurstLength; + sess->FirstBurstLength = SPDK_ISCSI_FIRST_BURST_LENGTH; + sess->MaxBurstLength = SPDK_ISCSI_MAX_BURST_LENGTH; sess->InitialR2T = DEFAULT_INITIALR2T; sess->ImmediateData = g_spdk_iscsi.ImmediateData; sess->DataPDUInOrder = DEFAULT_DATAPDUINORDER; diff --git a/lib/iscsi/iscsi.h b/lib/iscsi/iscsi.h index 7eedca411..45cf23525 100644 --- a/lib/iscsi/iscsi.h +++ b/lib/iscsi/iscsi.h @@ -279,9 +279,6 @@ struct spdk_iscsi_globals { uint32_t MaxConnections; uint32_t DefaultTime2Wait; uint32_t DefaultTime2Retain; - uint32_t FirstBurstLength; - uint32_t MaxBurstLength; - uint32_t MaxRecvDataSegmentLength; uint32_t ImmediateData; uint32_t ErrorRecoveryLevel; uint32_t AllowDuplicateIsid; @@ -371,7 +368,7 @@ spdk_get_immediate_data_buffer_size(void) * take up much space and we need to make sure the worst-case scenario * can be satisified by the size returned here. */ - return g_spdk_iscsi.FirstBurstLength + + return SPDK_ISCSI_FIRST_BURST_LENGTH + ISCSI_DIGEST_LEN + /* data digest */ ISCSI_DIGEST_LEN + /* header digest */ 8 + /* bidirectional AHS */ @@ -381,7 +378,7 @@ spdk_get_immediate_data_buffer_size(void) static inline int spdk_get_data_out_buffer_size(void) { - return g_spdk_iscsi.MaxRecvDataSegmentLength; + return SPDK_ISCSI_MAX_RECV_DATA_SEGMENT_LENGTH; } #endif /* SPDK_ISCSI_H */ diff --git a/lib/iscsi/iscsi_subsystem.c b/lib/iscsi/iscsi_subsystem.c index 26b8efde7..3ebd3e3bb 100644 --- a/lib/iscsi/iscsi_subsystem.c +++ b/lib/iscsi/iscsi_subsystem.c @@ -647,37 +647,6 @@ spdk_iscsi_app_read_parameters(void) return -1; } - g_spdk_iscsi.FirstBurstLength = SPDK_ISCSI_FIRST_BURST_LENGTH; - SPDK_DEBUGLOG(SPDK_TRACE_ISCSI, "FirstBurstLength %d\n", - g_spdk_iscsi.FirstBurstLength); - - g_spdk_iscsi.MaxBurstLength = SPDK_ISCSI_MAX_BURST_LENGTH; - SPDK_DEBUGLOG(SPDK_TRACE_ISCSI, "MaxBurstLength %d\n", - g_spdk_iscsi.MaxBurstLength); - - g_spdk_iscsi.MaxRecvDataSegmentLength = SPDK_ISCSI_MAX_RECV_DATA_SEGMENT_LENGTH; - SPDK_DEBUGLOG(SPDK_TRACE_ISCSI, "MaxRecvDataSegmentLength %d\n", - g_spdk_iscsi.MaxRecvDataSegmentLength); - - /* check size limit (up to 24bits - RFC3720(12.12)) */ - if (g_spdk_iscsi.MaxBurstLength < 512) { - SPDK_ERRLOG("MaxBurstLength(%d) < 512\n", g_spdk_iscsi.MaxBurstLength); - return -1; - } - if (g_spdk_iscsi.FirstBurstLength < 512) { - SPDK_ERRLOG("FirstBurstLength(%d) < 512\n", g_spdk_iscsi.FirstBurstLength); - return -1; - } - if (g_spdk_iscsi.FirstBurstLength > g_spdk_iscsi.MaxBurstLength) { - SPDK_ERRLOG("FirstBurstLength(%d) > MaxBurstLength(%d)\n", - g_spdk_iscsi.FirstBurstLength, g_spdk_iscsi.MaxBurstLength); - return -1; - } - if (g_spdk_iscsi.MaxBurstLength > 0x00ffffff) { - SPDK_ERRLOG("MaxBurstLength(%d) > 0x00ffffff\n", g_spdk_iscsi.MaxBurstLength); - return -1; - } - val = spdk_conf_section_get_val(sp, "ImmediateData"); if (val == NULL) { ImmediateData = DEFAULT_IMMEDIATEDATA; diff --git a/lib/iscsi/param.c b/lib/iscsi/param.c index 71bff6bf4..d3b14a867 100644 --- a/lib/iscsi/param.c +++ b/lib/iscsi/param.c @@ -534,10 +534,10 @@ spdk_iscsi_special_param_construction(struct spdk_iscsi_conn *conn, SPDK_DEBUGLOG(SPDK_TRACE_ISCSI, "returning MaxRecvDataSegmentLength=%d\n", - g_spdk_iscsi.MaxRecvDataSegmentLength); + SPDK_ISCSI_MAX_RECV_DATA_SEGMENT_LENGTH); len = snprintf((char *)data + total, alloc_len - total, "MaxRecvDataSegmentLength=%d", - g_spdk_iscsi.MaxRecvDataSegmentLength); + SPDK_ISCSI_MAX_RECV_DATA_SEGMENT_LENGTH); total += len + 1; } diff --git a/test/iscsi_tgt/calsoft/iscsi.conf b/test/iscsi_tgt/calsoft/iscsi.conf index 9cd35a33d..892ff9bbe 100644 --- a/test/iscsi_tgt/calsoft/iscsi.conf +++ b/test/iscsi_tgt/calsoft/iscsi.conf @@ -8,9 +8,6 @@ DiscoveryAuthGroup AuthGroup1 MaxSessions 256 MaxR2T 256 - FirstBurstLength 262144 - MaxBurstLength 16776192 - MaxRecvDataSegmentLength 131072 ErrorRecoveryLevel 2 NopInInterval 10 AllowDuplicateIsid Yes diff --git a/test/unit/lib/iscsi/iscsi.c/iscsi_ut.c b/test/unit/lib/iscsi/iscsi.c/iscsi_ut.c index 95bd419b5..21781e2ee 100644 --- a/test/unit/lib/iscsi/iscsi.c/iscsi_ut.c +++ b/test/unit/lib/iscsi/iscsi.c/iscsi_ut.c @@ -147,8 +147,6 @@ maxburstlength_test(void) req->write_bit = 1; req->final_bit = 1; - g_spdk_iscsi.MaxRecvDataSegmentLength = 1024; - rc = spdk_iscsi_execute(&conn, req_pdu); CU_ASSERT_FATAL(rc == 0);