]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
nvme-rdma: support devices with queue size < 32
authorMarta Rybczynska <mrybczyn@kalray.eu>
Mon, 10 Apr 2017 15:12:34 +0000 (17:12 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 7 Jun 2017 10:10:09 +0000 (12:10 +0200)
commit0fe9c5519553ee65b1e8ab137d23c07ee4479d05
tree9ea16d6f023110101620da4d6d53c5cb5bac8731
parentf88d3d6e4f8407d3a09390eb8db7ffb37e46bb95
nvme-rdma: support devices with queue size < 32

commit 0544f5494a03b8846db74e02be5685d1f32b06c9 upstream.

In the case of small NVMe-oF queue size (<32) we may enter a deadlock
caused by the fact that the IB completions aren't sent waiting for 32
and the send queue will fill up.

The error is seen as (using mlx5):
[ 2048.693355] mlx5_0:mlx5_ib_post_send:3765:(pid 7273):
[ 2048.693360] nvme nvme1: nvme_rdma_post_send failed with error code -12

This patch changes the way the signaling is done so that it depends on
the queue depth now. The magic define has been removed completely.

Signed-off-by: Marta Rybczynska <marta.rybczynska@kalray.eu>
Signed-off-by: Samuel Jones <sjones@kalray.eu>
Acked-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/nvme/host/rdma.c