Conditions:
- FreeNAS 0.7.2 (or/and NAS4Free 9.1.0.1 (revision 531) behaves the same way)
- iSCSI target: istgt
- the DVD-ROM target created with istgt
- the iSCSI initiator creates the session with istgt target
- the iSCSI initiator claims the MaxRecvDataSegmentLength=8192 while
the session parameter negotiation stage
- the iSCSI initiator issues the SET MODE(10) SCSI command with
allocation length 0xFFF0 bytes
- the istgt immideately aborts the TCP connection (sends FIN)
- the istgt logfile contains the messages:
freenas istgt[1365]: istgt_lu_dvd.c:3339:istgt_lu_dvd_execute: ***ERROR*** data_alloc_len(8192) too small
freenas istgt[1365]: istgt_lu.c:2283:istgt_lu_execute: ***ERROR*** LU2: lu_dvd_execute() failed
freenas istgt[1365]: istgt_iscsi.c:3118:istgt_iscsi_op_scsi: ***ERROR*** lu_execute() failed
freenas istgt[1365]: istgt_iscsi.c:4400:istgt_iscsi_execute: ***ERROR*** iscsi_op_scsi() failed
If the iSCSI initiator claims the MaxRecvDataSegmentLength=65536, the problem disappears.
But the small iSCSI segments is not acceptable at all for some iSCSI initiators (e.g. embedded
systems with limited amount of memory).
- FreeNAS 0.7.2 (or/and NAS4Free 9.1.0.1 (revision 531) behaves the same way)
- iSCSI target: istgt
- the DVD-ROM target created with istgt
- the iSCSI initiator creates the session with istgt target
- the iSCSI initiator claims the MaxRecvDataSegmentLength=8192 while
the session parameter negotiation stage
- the iSCSI initiator issues the SET MODE(10) SCSI command with
allocation length 0xFFF0 bytes
- the istgt immideately aborts the TCP connection (sends FIN)
- the istgt logfile contains the messages:
freenas istgt[1365]: istgt_lu_dvd.c:3339:istgt_lu_dvd_execute: ***ERROR*** data_alloc_len(8192) too small
freenas istgt[1365]: istgt_lu.c:2283:istgt_lu_execute: ***ERROR*** LU2: lu_dvd_execute() failed
freenas istgt[1365]: istgt_iscsi.c:3118:istgt_iscsi_op_scsi: ***ERROR*** lu_execute() failed
freenas istgt[1365]: istgt_iscsi.c:4400:istgt_iscsi_execute: ***ERROR*** iscsi_op_scsi() failed
If the iSCSI initiator claims the MaxRecvDataSegmentLength=65536, the problem disappears.
But the small iSCSI segments is not acceptable at all for some iSCSI initiators (e.g. embedded
systems with limited amount of memory).