On 9/16/19 8:24 PM, Honggang LI wrote:
In case the SRPT modules, which include the in-tree 'ib_srpt.ko' module, do not support SRP-2 'immediate data' feature, the default maximum initiator to target IU size is significantly samller than
^^^^^^^ smaller?
8260. For 'ib_srpt.ko' module, which built from source before [2], the default maximum initiator to target IU is 2116.
[ ... ]
diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c index b5960351bec0..2eadb038b257 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.c +++ b/drivers/infiniband/ulp/srp/ib_srp.c @@ -75,6 +75,7 @@ static bool prefer_fr = true; static bool register_always = true; static bool never_register; static int topspin_workarounds = 1; +static uint32_t srp_opt_max_it_iu_size;
Each SCSI host can represent a connection to another SRP target, and the max_it_iu_size parameter can differ per target. So I think this variable should be moved into struct srp_target_port instead of being global. See also srp_max_it_iu_len().
Thanks, Bart.