RDMA/rxe: Create duplicate mapping tables for FMRs
authorBob Pearson <rpearsonhpe@gmail.com>
Tue, 14 Sep 2021 16:42:06 +0000 (11:42 -0500)
committerJason Gunthorpe <jgg@nvidia.com>
Fri, 24 Sep 2021 13:15:00 +0000 (10:15 -0300)
commit647bf13ce944f20f7402f281578423a952274e4a
tree47fc68062be3ed0d537d0fdb415bffe6a7f3131d
parent001345339f4ca85790a1644a74e33ae77ac116be
RDMA/rxe: Create duplicate mapping tables for FMRs

For fast memory regions create duplicate mapping tables so ib_map_mr_sg()
can build a new mapping table which is then swapped into place
synchronously with the execution of an IB_WR_REG_MR work request.

Currently the rxe driver uses the same table for receiving RDMA operations
and for building new tables in preparation for reusing the MR. This
exposes users to potentially incorrect results.

Link: https://lore.kernel.org/r/20210914164206.19768-5-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/sw/rxe/rxe_loc.h
drivers/infiniband/sw/rxe/rxe_mr.c
drivers/infiniband/sw/rxe/rxe_mw.c
drivers/infiniband/sw/rxe/rxe_verbs.c
drivers/infiniband/sw/rxe/rxe_verbs.h