diff options
-rw-r--r-- | drivers/infiniband/hw/mlx5/qp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/mlx5/qp.c b/drivers/infiniband/hw/mlx5/qp.c index e3881433f5d7..8a36fd78c89f 100644 --- a/drivers/infiniband/hw/mlx5/qp.c +++ b/drivers/infiniband/hw/mlx5/qp.c | |||
@@ -1915,6 +1915,10 @@ static int set_frwr_li_wr(void **seg, struct ib_send_wr *wr, int *size, | |||
1915 | if (unlikely((*seg == qp->sq.qend))) | 1915 | if (unlikely((*seg == qp->sq.qend))) |
1916 | *seg = mlx5_get_send_wqe(qp, 0); | 1916 | *seg = mlx5_get_send_wqe(qp, 0); |
1917 | if (!li) { | 1917 | if (!li) { |
1918 | if (unlikely(wr->wr.fast_reg.page_list_len > | ||
1919 | wr->wr.fast_reg.page_list->max_page_list_len)) | ||
1920 | return -ENOMEM; | ||
1921 | |||
1918 | set_frwr_pages(*seg, wr, mdev, pd, writ); | 1922 | set_frwr_pages(*seg, wr, mdev, pd, writ); |
1919 | *seg += sizeof(struct mlx5_wqe_data_seg); | 1923 | *seg += sizeof(struct mlx5_wqe_data_seg); |
1920 | *size += (sizeof(struct mlx5_wqe_data_seg) / 16); | 1924 | *size += (sizeof(struct mlx5_wqe_data_seg) / 16); |