[stgt] [PATCH] ISCSI: Honour MaxRecvDataSegmentLength for NORMAL sessions

ronnie sahlberg ronniesahlberg at gmail.com
Sat Aug 18 22:55:39 CEST 2012


On Sat, Aug 18, 2012 at 7:10 PM, FUJITA Tomonori
<fujita.tomonori at lab.ntt.co.jp> wrote:
> On Sat, 18 Aug 2012 18:56:09 +1000
> ronnie sahlberg <ronniesahlberg at gmail.com> wrote:
>
>> The bug is that IF the initiator does state it can handle larger
>> DATA-IN PDUs than 8kb,   like open-iscsi does, and all other iniators
>> also does.
>
> btw, I've seen initiators that don't send
> MaxRecvDataSegmentLength long ago. I can't recall what.
>
>
>> The b\ug in tgtd in processing the login is that tgtd ONLY parses this
>> "lets use bigger than 8kb pdu" IFF the session is a discovery session,
>> but not for NORMAL sessions.
>
> Can you recall why we handle discovery and normal sessions differently?

That is an issue. Why should we handle discover and normal sessions
differently at all.

Please see the attached patch, it removes the session==discovery
conditional and makes tgtd honour the
negotiated maxrecvdatasegmentlength for all sessions, not just discovery.


This should handle both the original issue with discovery   and also
the issue with large reads being split up in 8k trains


ronnie shalberg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: maxrecvdatasegmentlength.diff
Type: application/octet-stream
Size: 1245 bytes
Desc: not available
URL: <http://lists.wpkg.org/pipermail/stgt/attachments/20120819/eaacbb02/attachment-0002.obj>


More information about the stgt mailing list