IB/mlx5: Add ODP WQE handlers for kernel QPs
authorMoni Shoua <monis@mellanox.com>
Wed, 15 Jan 2020 12:43:34 +0000 (14:43 +0200)
committerLeon Romanovsky <leonro@mellanox.com>
Thu, 16 Jan 2020 14:14:47 +0000 (16:14 +0200)
commitda9ee9d8a8745e70e481446e0bfe2d773b1c364b
tree06947e57eade4ffe1da8146cc4e243995a25d294
parent87d8069f6b028793254ddd0a66df1d7b6d79b450
IB/mlx5: Add ODP WQE handlers for kernel QPs

One of the steps in ODP page fault handler for WQEs is to read a WQE
from a QP send queue or receive queue buffer at a specific index.

Since the implementation of this buffer is different between kernel and
user QP the implementation of the handler needs to be aware of that and
handle it in a different way.

ODP for kernel MRs is currently supported only for RDMA_READ
and RDMA_WRITE operations so change the handler to
- read a WQE from a kernel QP send queue
- fail if access to receive queue or shared receive queue is
  required for a kernel QP

Signed-off-by: Moni Shoua <monis@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
drivers/infiniband/hw/mlx5/mlx5_ib.h
drivers/infiniband/hw/mlx5/odp.c
drivers/infiniband/hw/mlx5/qp.c