22440c7a23
When performed limitation iSCSI tests, 128 target nodes with 1 connection for each target node, for IO bigger than 256KiB iSCSI target will report run of out task pool issue sometimes. When all the iSCSI parameters with default values, each connection will consume maximum 189 tasks, we hardcoded the task pool with 16384, so 189 * 128 connection will exceed 16384. Increase the default number from 16384 to 32768 will fix the issue. With 1MiB block size and queue depth with 128 for each connection, there will be 64 outstanding iSCSI commands in the iSCSI target, for Writes, the maximum R2T number is 4, so the maximum tasks for the 4 R2T is (1 + 16) * 4 = 68, 8KiB for the first burst task, 16 for the data segment. For Reads, the maximum 64 data in segment can be used as 4 iSCSI Read commands. The rest 56 iSCSI commands will cost 56 tasks, so the total number is 56 + 64 + 68 = 188, 1 additional task for NOP task. Change-Id: I945871cbe3076139f08c2ef647af2d9c84601dcb Signed-off-by: Changpeng Liu <changpeng.liu@intel.com> |
||
---|---|---|
.. | ||
acceptor.c | ||
acceptor.h | ||
conn.c | ||
conn.h | ||
crc32c.c | ||
crc32c.h | ||
init_grp.c | ||
init_grp.h | ||
iscsi_rpc.c | ||
iscsi_subsystem.c | ||
iscsi.c | ||
iscsi.h | ||
Makefile | ||
md5.c | ||
md5.h | ||
param.c | ||
param.h | ||
portal_grp.c | ||
portal_grp.h | ||
task.c | ||
task.h | ||
tgt_node.c | ||
tgt_node.h |