RDMA/siw: Fix SGL mapping issues
authorBernard Metzler <bmt@zurich.ibm.com>
Thu, 22 Aug 2019 15:07:41 +0000 (17:07 +0200)
committerDoug Ledford <dledford@redhat.com>
Thu, 22 Aug 2019 15:21:06 +0000 (11:21 -0400)
commitfab4f97e1fe33cf08e58c09cf9eee334857d9fe7
tree52105f0deb2e0894921793eb24b81518334c4c8a
parentd37b1e534071ab1983e7c85273234b132c77591a
RDMA/siw: Fix SGL mapping issues

All user level and most in-kernel applications submit WQEs
where the SG list entries are all of a single type.
iSER in particular, however, will send us WQEs with mixed SG
types: sge[0] = kernel buffer, sge[1] = PBL region.
Check and set is_kva on each SG entry individually instead of
assuming the first SGE type carries through to the last.
This fixes iSER over siw.

Fixes: b9be6f18cf9e ("rdma/siw: transmit path")
Reported-by: Krishnamraju Eraparaju <krishna2@chelsio.com>
Tested-by: Krishnamraju Eraparaju <krishna2@chelsio.com>
Signed-off-by: Bernard Metzler <bmt@zurich.ibm.com>
Link: https://lore.kernel.org/r/20190822150741.21871-1-bmt@zurich.ibm.com
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/sw/siw/siw_qp_tx.c