Message ID | 1560268377-26560-8-git-send-email-maxg@mellanox.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Jason Gunthorpe |
Headers | show |
Series | Introduce new API for T10-PI offload | expand |
On Tue, Jun 11, 2019 at 06:52:43PM +0300, Max Gurtovoy wrote: > PI offload (protection information) is a feature that each RDMA provider > can implement differently. Thus, introduce new device attribute to define > the maximal length of the page list for PI fast registration operation. For > example, mlx5 driver uses a single internal MR to map both data and > protection SGL's, so it's equal to max_fast_reg_page_list_len / 2. > > Signed-off-by: Max Gurtovoy <maxg@mellanox.com> > Reviewed-by: Leon Romanovsky <leonro@mellanox.com> Looks good, Reviewed-by: Christoph Hellwig <hch@lst.de>
diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c index f4880259c8ac..1458f1b18d19 100644 --- a/drivers/infiniband/hw/mlx5/main.c +++ b/drivers/infiniband/hw/mlx5/main.c @@ -1008,6 +1008,8 @@ static int mlx5_ib_query_device(struct ib_device *ibdev, props->max_srq_sge = max_rq_sg - 1; props->max_fast_reg_page_list_len = 1 << MLX5_CAP_GEN(mdev, log_max_klm_list_size); + props->max_pi_fast_reg_page_list_len = + props->max_fast_reg_page_list_len / 2; get_atomic_caps_qp(dev, props); props->masked_atomic_cap = IB_ATOMIC_NONE; props->max_mcast_grp = 1 << MLX5_CAP_GEN(mdev, log_max_mcg); diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index 88f8970a4b16..3ca33bf12b30 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h @@ -401,6 +401,7 @@ struct ib_device_attr { int max_srq_wr; int max_srq_sge; unsigned int max_fast_reg_page_list_len; + unsigned int max_pi_fast_reg_page_list_len; u16 max_pkeys; u8 local_ca_ack_delay; int sig_prot_cap;