Accepting request 501556 from home:lyan:branches:Virtualization
Backport ipxe to support FirstBurstLength OBS-URL: https://build.opensuse.org/request/show/501556 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=344
This commit is contained in:
parent
e4f6cf3bac
commit
5c1e427384
79
ipxe-iscsi-Always-send-FirstBurstLength-parameter.patch
Normal file
79
ipxe-iscsi-Always-send-FirstBurstLength-parameter.patch
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
From 08a98a925917dc2445d098c3ce9a2d2d8b8acda4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michael Brown <mcb30@ipxe.org>
|
||||||
|
Date: Wed, 3 May 2017 13:01:11 +0100
|
||||||
|
Subject: [PATCH 2/2] [iscsi] Always send FirstBurstLength parameter
|
||||||
|
|
||||||
|
As of kernel 4.11, the LIO target will propose a value for
|
||||||
|
FirstBurstLength if the initiator did not do so. This is entirely
|
||||||
|
redundant in our case, since FirstBurstLength is defined by RFC 3720
|
||||||
|
to be
|
||||||
|
|
||||||
|
"Irrelevant when: ( InitialR2T=Yes and ImmediateData=No )"
|
||||||
|
|
||||||
|
and we already enforce both InitialR2T=Yes and ImmediateData=No in our
|
||||||
|
initial proposal. However, LIO (arguably correctly) complains when we
|
||||||
|
do not respond to its redundant proposal of an already-irrelevant
|
||||||
|
value.
|
||||||
|
|
||||||
|
Fix by always proposing the default value for FirstBurstLength.
|
||||||
|
|
||||||
|
Debugged-by: Patrick Seeburger <info@8bit.de>
|
||||||
|
Tested-by: Patrick Seeburger <info@8bit.de>
|
||||||
|
Signed-off-by: Michael Brown <mcb30@ipxe.org>
|
||||||
|
[BR: BSC#1040476]
|
||||||
|
Signed-off-by: Liang Yan <lyan@suse.com>
|
||||||
|
---
|
||||||
|
src/net/tcp/iscsi.c | 14 ++++++++++----
|
||||||
|
1 file changed, 10 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/net/tcp/iscsi.c b/src/net/tcp/iscsi.c
|
||||||
|
index 6da8570c..aa30efda 100644
|
||||||
|
--- a/src/net/tcp/iscsi.c
|
||||||
|
+++ b/src/net/tcp/iscsi.c
|
||||||
|
@@ -434,12 +434,12 @@ static int iscsi_tx_data_out ( struct iscsi_session *iscsi ) {
|
||||||
|
*
|
||||||
|
* HeaderDigest=None
|
||||||
|
* DataDigest=None
|
||||||
|
- * MaxConnections is irrelevant; we make only one connection anyway [4]
|
||||||
|
+ * MaxConnections=1 (irrelevant; we make only one connection anyway) [4]
|
||||||
|
* InitialR2T=Yes [1]
|
||||||
|
- * ImmediateData is irrelevant; we never send immediate data [4]
|
||||||
|
+ * ImmediateData=No (irrelevant; we never send immediate data) [4]
|
||||||
|
* MaxRecvDataSegmentLength=8192 (default; we don't care) [3]
|
||||||
|
* MaxBurstLength=262144 (default; we don't care) [3]
|
||||||
|
- * FirstBurstLength=262144 (default; we don't care)
|
||||||
|
+ * FirstBurstLength=65536 (irrelevant due to other settings) [5]
|
||||||
|
* DefaultTime2Wait=0 [2]
|
||||||
|
* DefaultTime2Retain=0 [2]
|
||||||
|
* MaxOutstandingR2T=1
|
||||||
|
@@ -464,6 +464,11 @@ static int iscsi_tx_data_out ( struct iscsi_session *iscsi ) {
|
||||||
|
* these parameters, but some targets (notably a QNAP TS-639Pro) fail
|
||||||
|
* unless they are supplied, so we explicitly specify the default
|
||||||
|
* values.
|
||||||
|
+ *
|
||||||
|
+ * [5] FirstBurstLength is defined to be irrelevant since we already
|
||||||
|
+ * force InitialR2T=Yes and ImmediateData=No, but some targets
|
||||||
|
+ * (notably LIO as of kernel 4.11) fail unless it is specified, so we
|
||||||
|
+ * explicitly specify the default value.
|
||||||
|
*/
|
||||||
|
static int iscsi_build_login_request_strings ( struct iscsi_session *iscsi,
|
||||||
|
void *data, size_t len ) {
|
||||||
|
@@ -526,13 +531,14 @@ static int iscsi_build_login_request_strings ( struct iscsi_session *iscsi,
|
||||||
|
"ImmediateData=No%c"
|
||||||
|
"MaxRecvDataSegmentLength=8192%c"
|
||||||
|
"MaxBurstLength=262144%c"
|
||||||
|
+ "FirstBurstLength=65536%c"
|
||||||
|
"DefaultTime2Wait=0%c"
|
||||||
|
"DefaultTime2Retain=0%c"
|
||||||
|
"MaxOutstandingR2T=1%c"
|
||||||
|
"DataPDUInOrder=Yes%c"
|
||||||
|
"DataSequenceInOrder=Yes%c"
|
||||||
|
"ErrorRecoveryLevel=0%c",
|
||||||
|
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
|
||||||
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
|
||||||
|
}
|
||||||
|
|
||||||
|
return used;
|
||||||
|
--
|
||||||
|
2.13.0
|
||||||
|
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 6 21:21:53 UTC 2017 - lyan@suse.com
|
||||||
|
|
||||||
|
- Backport ipxe to support FirstBurstLength (bsc#1040476)
|
||||||
|
ipxe-iscsi-Always-send-FirstBurstLength-parameter.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon May 22 23:52:12 UTC 2017 - brogers@suse.com
|
Mon May 22 23:52:12 UTC 2017 - brogers@suse.com
|
||||||
|
|
||||||
|
@ -199,6 +199,7 @@ Patch0059: 0059-Hacks-for-building-on-gcc-7-Fedora-.patch
|
|||||||
Patch1100: ipxe-stable-buildid.patch
|
Patch1100: ipxe-stable-buildid.patch
|
||||||
Patch1101: ipxe-use-gcc6-for-more-compact-code.patch
|
Patch1101: ipxe-use-gcc6-for-more-compact-code.patch
|
||||||
Patch1102: ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch
|
Patch1102: ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch
|
||||||
|
Patch1103: ipxe-iscsi-Always-send-FirstBurstLength-parameter.patch
|
||||||
|
|
||||||
# sgabios
|
# sgabios
|
||||||
# PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds
|
# PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||||
@ -899,6 +900,7 @@ pushd roms/ipxe
|
|||||||
%patch1100 -p1
|
%patch1100 -p1
|
||||||
%patch1101 -p1
|
%patch1101 -p1
|
||||||
%patch1102 -p1
|
%patch1102 -p1
|
||||||
|
%patch1103 -p1
|
||||||
popd
|
popd
|
||||||
|
|
||||||
pushd roms/sgabios
|
pushd roms/sgabios
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 6 21:21:53 UTC 2017 - lyan@suse.com
|
||||||
|
|
||||||
|
- Backport ipxe to support FirstBurstLength (bsc#1040476)
|
||||||
|
ipxe-iscsi-Always-send-FirstBurstLength-parameter.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon May 22 23:52:12 UTC 2017 - brogers@suse.com
|
Mon May 22 23:52:12 UTC 2017 - brogers@suse.com
|
||||||
|
|
||||||
|
@ -199,6 +199,7 @@ Patch0059: 0059-Hacks-for-building-on-gcc-7-Fedora-.patch
|
|||||||
Patch1100: ipxe-stable-buildid.patch
|
Patch1100: ipxe-stable-buildid.patch
|
||||||
Patch1101: ipxe-use-gcc6-for-more-compact-code.patch
|
Patch1101: ipxe-use-gcc6-for-more-compact-code.patch
|
||||||
Patch1102: ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch
|
Patch1102: ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch
|
||||||
|
Patch1103: ipxe-iscsi-Always-send-FirstBurstLength-parameter.patch
|
||||||
|
|
||||||
# sgabios
|
# sgabios
|
||||||
# PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds
|
# PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||||
@ -899,6 +900,7 @@ pushd roms/ipxe
|
|||||||
%patch1100 -p1
|
%patch1100 -p1
|
||||||
%patch1101 -p1
|
%patch1101 -p1
|
||||||
%patch1102 -p1
|
%patch1102 -p1
|
||||||
|
%patch1103 -p1
|
||||||
popd
|
popd
|
||||||
|
|
||||||
pushd roms/sgabios
|
pushd roms/sgabios
|
||||||
|
Loading…
Reference in New Issue
Block a user