linux/drivers/infiniband/hw/mlx5
Guy Levi 34f4c9554d IB/mlx5: Use fragmented QP's buffer for in-kernel users
The current implementation of create QP requires contiguous memory, such a
requirement is problematic once the memory is fragmented or the system is
low in memory, it causes failures in dma_zalloc_coherent().

This patch takes advantage of the new mlx5_core API which allocates a
fragmented buffer. This makes the QP creation much more resilient to
memory fragmentation. Data-path code was adapted to the fact that WQEs can
cross buffers.

We also use the opportunity to fix some cosmetic legacy coding convention
errors which were in the feature scope.

Signed-off-by: Guy Levi <guyle@mellanox.com>
Reviewed-by: Majd Dibbiny <majd@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2018-11-29 17:12:13 -07:00
..
ah.c RDMA: Convert drivers to use sgid_attr instead of sgid_index 2018-06-18 11:11:26 -06:00
cmd.c IB/mlx5: Set uid as part of TD commands 2018-09-25 14:06:38 -06:00
cmd.h IB/mlx5: Set uid as part of TD commands 2018-09-25 14:06:38 -06:00
cong.c IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers 2018-07-09 13:15:12 -06:00
cq.c First merge window pull request 2018-10-26 07:38:19 -07:00
devx.c RDMA/mlx5: Attach a DEVX counter via raw flow creation 2018-11-29 16:51:33 -07:00
doorbell.c
flow.c RDMA/mlx5: Attach a DEVX counter via raw flow creation 2018-11-29 16:51:33 -07:00
gsi.c RDMA, core and ULPs: Declare ib_post_send() and ib_post_recv() arguments const 2018-07-30 20:09:34 -06:00
ib_rep.c RDMA/drivers: Use core provided API for registering device attributes 2018-10-17 03:45:01 -06:00
ib_rep.h RDMA/mlx5: Update SPDX tags to show proper license 2018-06-05 14:04:20 -06:00
ib_virt.c IB/mlx5: Restore IB guid/policy for virtual functions 2017-07-24 10:34:28 -04:00
Kconfig net/mlx5: Fix tristate and description for MLX5 module 2018-07-18 14:33:25 -07:00
mad.c IB/mlx5: Route MADs for dual port RoCE 2018-01-08 11:42:23 -07:00
main.c RDMA/mlx5: Attach a DEVX counter via raw flow creation 2018-11-29 16:51:33 -07:00
Makefile IB/mlx5: Introduce flow steering matcher uapi object 2018-07-24 13:34:37 -06:00
mem.c RDMA/umem: Get rid of struct ib_umem.odp_data 2018-09-21 11:54:46 -04:00
mlx5_ib.h IB/mlx5: Use fragmented QP's buffer for in-kernel users 2018-11-29 17:12:13 -07:00
mr.c IB/mlx5: Fix MR cache initialization 2018-10-16 08:30:37 -06:00
odp.c {net,IB}/mlx5: Move Page fault EQ and ODP logic to RDMA 2018-11-20 20:07:33 +02:00
qp.c IB/mlx5: Use fragmented QP's buffer for in-kernel users 2018-11-29 17:12:13 -07:00
srq.c IB/mlx5: Use fragmented SRQ's buffer for in-kernel users 2018-11-29 17:12:13 -07:00