]> git.baikalelectronics.ru Git - kernel.git/commit
IB/mlx5: Reorder GSI completions
authorHaggai Eran <haggaie@mellanox.com>
Mon, 29 Feb 2016 13:45:09 +0000 (15:45 +0200)
committerDoug Ledford <dledford@redhat.com>
Tue, 1 Mar 2016 16:04:07 +0000 (11:04 -0500)
commita5d10f75e687f0de0880c2cc775b1bf917db9cb8
tree3b9ff0b0b9b801372fc7ae351a94020d42e695b8
parent7551fac931529f351c2c18e3ffa0b38198121e54
IB/mlx5: Reorder GSI completions

The emulated GSI QP's send completions are generated by multiple hardware
QPs, so their completions could arrive out of order with respect to the
order their work request were submitted.

Reorder the completions by keeping a list of the posted work request and
their completions. A newly received completion from the hardware updates
the list and marks its work request as completed. However, the completions
are only reported to the client according to the list order.

In order to support that, create a new private CQ to handle the hardware
completions.

Signed-off-by: Haggai Eran <haggaie@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/mlx5/gsi.c