IB/rdmavt: rdmavt can handle non aligned page maps
authorDennis Dalessandro <dennis.dalessandro@intel.com>
Mon, 10 Oct 2016 13:14:45 +0000 (06:14 -0700)
committerDoug Ledford <dledford@redhat.com>
Tue, 15 Nov 2016 21:16:40 +0000 (16:16 -0500)
commite1fafdcbe0e3e769c6a83317dd845bc99b4fe61d
tree63e6e64282e79d02feafcd956e2573bdea7d5208
parenta909d3e636995ba7c349e2ca5dbb528154d4ac30
IB/rdmavt: rdmavt can handle non aligned page maps

The initial code for rdmavt carried with it a restriction that was a
vestige from the qib driver, that to dma map a page it had to be less
than a page size. This is not the case on modern hardware, both qib and
hfi1 will be just fine with unaligned map requests.

This fixes a 4.8 regression where by an IPoIB transfer of > PAGE_SIZE
will hang because the dma map page call always fails. This was
introduced after commit 5faba5469522 ("IB/ipoib: Report SG feature
regardless of HW UD CSUM capability") added the capability to use SG by
default. Rather than override this, the HW supports it, so allow SG.

Cc: Stable <stable@vger.kernel.org> # 4.8
Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/sw/rdmavt/dma.c