[Stgt-devel] dd fails with iSER

Pete Wyckoff pw
Thu Aug 9 22:22:34 CEST 2007

erezz at voltaire.com wrote on Wed, 08 Aug 2007 12:11 +0300:
> sgp_dd if=/dev/sg3 of=/dev/null count=10

My usual tree is 2.6.22-rc5 with bidi patches from Tomo and Boaz
mixed in, plus local fixes for iser bidirectional and AHS.  I tried
a stock 2.6.23-rc2, no bidi, and did indeed find one problem, which
is worked around with the below (also in git).  It was not an issue
of missing kernel patches on the initiator (whew).

But there is a larger problem which we must address soon related to
flow control of outstanding RDMA operations.  The reason we hadn't
run into the problem here is that we always adjust the transfer
settings for better performance:

        ./tgtadm --lld iscsi --mode target --op update --tid 1 \
                 --name MaxRecvDataSegmentLength --value 262144
        ./tgtadm --lld iscsi --mode target --op update --tid 1 \
                 --name FirstBurstLength --value 262144

The default values are 8k and 64k respectively.  It is the very
small 8k that gets us into trouble by requiring lots of small RDMA
operations to satisfy a transfer.

There is also a spot in /etc/iscsi/iscsid.conf where you can adjust
the default value for the initiator:

	node.conn[0].iscsi.MaxRecvDataSegmentLength = 262144

Its default is a more reasonable 128k.

I'll look into this matter further, but this hopefully will let you
do some basic testing.

> When I run with "tgtd -d 9", I don't see any logs. I only see:
> Aug  8 12:01:27 noni tgtd: Target daemon logger with pid=6353 started!

It seems to produce logs at level <31>, which syslog ignores.  You
can do this though:

./tgtd -d 9 -f &

Then run the tgtadm commands and you should see output on stderr.

		-- Pete

More information about the stgt mailing list