srp-target: Retry when QP creation fails with ENOMEM
authorBart Van Assche <bvanassche@acm.org>
Sun, 19 Oct 2014 15:05:33 +0000 (18:05 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 6 Dec 2014 23:57:29 +0000 (15:57 -0800)
commit674d238eaee130a0686d06cbcd16e045de925420
treec45bda9cfcae5a9b62f7902c35e2d31959202f9c
parent9b5e10f1c49d03150864e0d8e59b152f9e1ab5ed
srp-target: Retry when QP creation fails with ENOMEM

commit ab477c1ff5e0a744c072404bf7db51bfe1f05b6e upstream.

It is not guaranteed to that srp_sq_size is supported
by the HCA. So if we failed to create the QP with ENOMEM,
try with a smaller srp_sq_size. Keep it up until we hit
MIN_SRPT_SQ_SIZE, then fail the connection.

Reported-by: Mark Lehrer <lehrer@gmail.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/infiniband/ulp/srpt/ib_srpt.c