diff options
| author | Michael Brown | 2006-05-19 02:31:42 +0200 |
|---|---|---|
| committer | Michael Brown | 2006-05-19 02:31:42 +0200 |
| commit | c69c1ec540f4a58e92f7f13ba8f214f9fac6f725 (patch) | |
| tree | 769aea9be87f2fdaf7db2c09747f82f365ecbbe2 | |
| parent | iSCSI writes seem to be working (at least, the ethereal trace shows no (diff) | |
| download | ipxe-c69c1ec540f4a58e92f7f13ba8f214f9fac6f725.tar.gz ipxe-c69c1ec540f4a58e92f7f13ba8f214f9fac6f725.tar.xz ipxe-c69c1ec540f4a58e92f7f13ba8f214f9fac6f725.zip | |
Documented login parameters that we negotiate.
| -rw-r--r-- | src/net/tcp/iscsi.c | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/net/tcp/iscsi.c b/src/net/tcp/iscsi.c index c138d9b69..633c895c9 100644 --- a/src/net/tcp/iscsi.c +++ b/src/net/tcp/iscsi.c @@ -249,7 +249,30 @@ static void iscsi_tx_data_out ( struct iscsi_session *iscsi ) { * @v iscsi iSCSI session * * These are the initial set of strings sent in the first login - * request PDU. + * request PDU. We want the following settings: + * + * HeaderDigest=None + * DataDigest=None + * MaxConnections is irrelevant; we make only one connection anyway + * InitialR2T=Yes (default) [1] + * ImmediateData is irrelevant; we never send immediate data + * MaxRecvDataSegmentLength=8192 (default) + * MaxBurstLength=262144 (default) + * FirstBurstLength=262144 (default) + * DefaultTime2Wait=0 [2] + * DefaultTime2Retain=0 [2] + * MaxOutstandingR2T=1 (default) + * DataPDUInOrder=Yes (default) + * DataSequenceInOrder=Yes (default) + * ErrorRecoveryLevel=0 (default) + * + * [1] InitialR2T has an OR resolution function, so the target may + * force us to use it. We therefore simplify our logic by always + * using it. + * + * [2] These ensure that we can safely start a new task once we have + * reconnected after a failure, without having to manually tidy up + * after the old one. */ static int iscsi_build_login_request_strings ( struct iscsi_session *iscsi, void *data, size_t len ) { |
