• Max Gurtovoy's avatar
    IB/iser: Fix sg_tablesize calculation · 1e5db6c3
    Max Gurtovoy authored
    For devices that can register page list that is bigger than
    USHRT_MAX, we actually take the wrong value for sg_tablesize.
    E.g: for CX4 max_fast_reg_page_list_len is 65536 (bigger than USHRT_MAX)
    so we set sg_tablesize to 0 by mistake. Therefore, each IO that is
    bigger than 4k splitted to "< 4k" chunks that cause performance degredation.
    Remove wrong sg_tablesize assignment, and use the value that was set during
    address resolution handler with the needed casting.
    
    Cc: <stable@vger.kernel.org> # v4.5+
    Signed-off-by: default avatarMax Gurtovoy <maxg@mellanox.com>
    Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
    Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
    1e5db6c3
iscsi_iser.c 31 KB