Sorry for nitpicking again, but..

On Mon, Oct 07, 2019 at 02:58:18PM +0300, Leon Romanovsky wrote:
> @@ -37,15 +39,15 @@ static inline bool rdma_rw_can_use_mr(struct ib_device 
> *dev, u8 port_num)
>   * Check if the device will use memory registration for this RW operation.
>   * We currently always use memory registrations for iWarp RDMA READs, and
>   * have a debug option to force usage of MRs.
> - *
> - * XXX: In the future we can hopefully fine tune this based on HCA driver
> - * input.

The above comment needs an updated a la:

 * Check if the device will use memory registration for this RW operation.
 * For RDMA READs we must use MRs on iWarp and can optionaly use them as an
 * optimaztion otherwise.  Additionally we have a debug option to force usage
 * of MRs to help testing this code path.
        

>       if (rdma_protocol_iwarp(dev, port_num) && dir == DMA_FROM_DEVICE)
>               return true;
> +     if (dev->attrs.max_sgl_rd && dir == DMA_FROM_DEVICE &&
> +         dma_nents > dev->attrs.max_sgl_rd)
> +             return true;

This can be simplified to:

        if (dir == DMA_FROM_DEVICE &&
            (rdma_protocol_iwarp(dev, port_num) ||
             (dev->attrs.max_sgl_rd && dma_nents > dev->attrs.max_sgl_rd)))
                return true;

Reply via email to