From: Jack Wang Date: Thu, 25 Mar 2021 15:33:05 +0000 (+0100) Subject: RDMA/rtrs-clt: Cap max_io_size X-Git-Tag: v5.15~1220^2~88 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0633e23771e0ac84b5e8b3c20e0b4640e29d720b;p=platform%2Fkernel%2Flinux-starfive.git RDMA/rtrs-clt: Cap max_io_size Max io size is limited by both remote buffer size and the max fr pages per mr. Link: https://lore.kernel.org/r/20210325153308.1214057-20-gi-oh.kim@ionos.com Signed-off-by: Jack Wang Reviewed-by: Md Haris Iqbal Signed-off-by: Gioh Kim Signed-off-by: Jason Gunthorpe --- diff --git a/drivers/infiniband/ulp/rtrs/rtrs-clt.c b/drivers/infiniband/ulp/rtrs/rtrs-clt.c index 279d60a..64990df 100644 --- a/drivers/infiniband/ulp/rtrs/rtrs-clt.c +++ b/drivers/infiniband/ulp/rtrs/rtrs-clt.c @@ -2901,7 +2901,9 @@ int rtrs_clt_query(struct rtrs_clt *clt, struct rtrs_attrs *attr) return -ECOMM; attr->queue_depth = clt->queue_depth; - attr->max_io_size = clt->max_io_size; + /* Cap max_io_size to min of remote buffer size and the fr pages */ + attr->max_io_size = min_t(int, clt->max_io_size, + clt->max_segments * SZ_4K); return 0; }