Make sure the iSCSI I/O limits are set properly so that the ISCSIDSEND IOCTL
can be used prior to the ISCSIDHANDOFF IOCTL which set the negotiated values. Else the login PDU will fail when passing the "-r" option to "iscsictl" which means iSCSI over RDMA instead of TCP/IP. Discussed with: np@ and trasz@ Sponsored by: Mellanox Technologies MFC after: 1 week
This commit is contained in:
parent
dd62bb6aeb
commit
9ac7c5a64c
@ -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);
|
||||
}
|
||||
|
@ -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);
|
||||
|
||||
/*
|
||||
|
@ -486,7 +486,11 @@ iser_conn_task_done(struct icl_conn *ic, void *prv)
|
||||
static int
|
||||
iser_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);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user