[Stgt-devel] iSER patches, second release

Pete Wyckoff pw
Fri Sep 14 23:50:07 CEST 2007


nezhinsky at gmail.com wrote on Sun, 09 Sep 2007 22:39 +0300:
> Another question, though. As far as i understand, when rdma read due
> to an r2t request is done, iser_rdma_read_completion() is called and
> it calls iscsi_scsi_cmd_execute() which may issue more R2Ts if
> necessary.
> So we send R2T --> RDMA-Read, then wait for completion, then send
> another one.
> This imposes delays between consecutive rdma-reads.
> If we issue all r2t requests at once (in the correct order, though), we
> guarantee that there are no gaps (or they are as small as possible)
> between the data chunks sent from the initiator.
> 
> Generally, the number of R2T simultaneously outstanding is governed by
> MaxOutstandingR2Ts, but it is irrelevant in iSER, just as MaxBurstSize is
> irrelevant. The only limitation on issuing R2Ts is the limitation of
> the hardware
> upon the max outstanding RDMA-Read requests.

You are right.  Neither TCP nor RDMA will issue more than one
outstanding R2T, although TCP could do so if MaxOutstandingR2Ts
allows.  We have the flexibility to do more RDMA reads, and perhaps
can get better performance with the pipelining that would bring.  I
think it would be a minor modification to iscsid.c, but suggest you
hold off until we get your no-copy-PDU work in.  And even this work
we should sit on for a bit until Tomo has a chance to think about
the current set of patches.

I fixed one bug today ("iscsi: do not lose tx state") and pushed up
a new git.  Hopefully Robin and others will help us shake out more
bugs.  We'll be running tests next week and taking a close look at
performance.

		-- Pete



More information about the stgt mailing list