On 6/9/2021 2:04 AM, Sagi Grimberg wrote:
On 5/25/21 7:22 PM, Max Gurtovoy wrote:
On 5/25/2021 6:54 PM, Sagi Grimberg wrote:
Since the Linux iser initiator default max I/O size set to 512KB and
since there is no handshake procedure for this size in iser
protocol,
set the default max IO size of the target to 512KB as well.
For changing the default values, there is a module parameter for
both
drivers.
Is this solving a bug?
No. Only OOB for some old connect-IB devices.
I think it's reasonable to align initiator and target defaults anyway.
Actually, this patch is solving a bug when trying iser over
Connect-IB, We see
the following failure when trying to do discovery:
You can work around this using the ib_isert sg_tablesize module param
and set it to 128.
So it's more OOB behavior than a bug.
Anyway, This is good practice to be able to establish connections
also for old devices without WAs and we also aligning to the sg_table
size in the initiator side.
Jason/Sagi,
can you comment on this patch for 5.14 ?
Actually, if this is the case, why not have a fallback when creating the
QP? Seems more reasonable to have the exception for the old devices
rather than having those mandate the common denominator no?
We first wanted to support 16MiB for isert but then we get a report from
Chelsio that it will dramatically reduce the total amount of connections
the can support.
So we created a module param and reduced the default to 1MiB. Now we
have similar issue with Connect-IB so reducing it to 512KiB (same as the
default for Linux iser initiator) seems reasonable.
Users that would like larger sg_table will use the module param.
I would avoid doing fallbacks for that and maintain a code that might be
dead in a year or two.