IB/srp: Add fast registration support
authorBart Van Assche <bvanassche@acm.org>
Tue, 20 May 2014 13:08:34 +0000 (15:08 +0200)
committerRoland Dreier <roland@purestorage.com>
Tue, 20 May 2014 16:20:52 +0000 (09:20 -0700)
commit5cfb17828d877a5541171087b9d746befdf2a126
treeb24c9f79049f8f6b034e466a000d5b29ffbadd0a
parent52ede08f00ebfc21d50a1f3e5908a78655900519
IB/srp: Add fast registration support

Certain HCA types (e.g. Connect-IB) and certain configurations (e.g.
ConnectX VF) support fast registration but not FMR. Hence add fast
registration support.

In function srp_rport_reconnect(), move the the srp_finish_req()
loop from after to before the srp_create_target_ib() call. This is
needed to avoid that srp_finish_req() tries to queue any
invalidation requests for rkeys associated with the old queue pair
on the newly allocated queue pair. Invoking srp_finish_req() before
the queue pair has been reallocated is safe since srp_claim_req()
handles completions correctly that arrive after srp_finish_req()
has been invoked.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Roland Dreier <roland@purestorage.com>
drivers/infiniband/ulp/srp/ib_srp.c
drivers/infiniband/ulp/srp/ib_srp.h