aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/iscsi
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2017-11-23 13:57:44 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2017-11-23 13:57:44 +0000
commit9ac7c5a64ca5728ea0ed15fc3c191695938f226d (patch)
tree87475c8e84583d18aa13ca91a277cb0d59d1b7b6 /sys/dev/iscsi
parentdd62bb6aeb3d35f252bd6c51a0039d158dbee54e (diff)
Notes
Diffstat (limited to 'sys/dev/iscsi')
-rw-r--r--sys/dev/iscsi/icl_soft.c3
-rw-r--r--sys/dev/iscsi/iscsi.c12
2 files changed, 15 insertions, 0 deletions
diff --git a/sys/dev/iscsi/icl_soft.c b/sys/dev/iscsi/icl_soft.c
index 005673cb73c6..5f8a8004d4d3 100644
--- a/sys/dev/iscsi/icl_soft.c
+++ b/sys/dev/iscsi/icl_soft.c
@@ -1449,6 +1449,9 @@ icl_soft_limits(struct icl_drv_limits *idl)
{
idl->idl_max_recv_data_segment_length = 128 * 1024;
+ idl->idl_max_send_data_segment_length = 128 * 1024;
+ idl->idl_max_burst_length = 262144;
+ idl->idl_first_burst_length = 65536;
return (0);
}
diff --git a/sys/dev/iscsi/iscsi.c b/sys/dev/iscsi/iscsi.c
index 673af553b658..0d53d68066e0 100644
--- a/sys/dev/iscsi/iscsi.c
+++ b/sys/dev/iscsi/iscsi.c
@@ -1787,6 +1787,18 @@ iscsi_ioctl_session_add(struct iscsi_softc *sc, struct iscsi_session_add *isa)
is = malloc(sizeof(*is), M_ISCSI, M_ZERO | M_WAITOK);
memcpy(&is->is_conf, &isa->isa_conf, sizeof(is->is_conf));
+ /*
+ * Set some default values, from RFC 3720, section 12.
+ *
+ * These values are updated by the handoff IOCTL, but are
+ * needed prior to the handoff to support sending the ISER
+ * login PDU.
+ */
+ is->is_max_recv_data_segment_length = 8192;
+ is->is_max_send_data_segment_length = 8192;
+ is->is_max_burst_length = 262144;
+ is->is_first_burst_length = 65536;
+
sx_xlock(&sc->sc_lock);
/*