xprtrdma: Byte-align FRWR registration
The RPC/RDMA transport's FRWR registration logic registers whole pages. This means areas in the first and last pages that are not involved in the RDMA I/O are needlessly exposed to the server. Buffered I/O is typically page-aligned, so not a problem there. But for direct I/O, which can be byte-aligned, and for reply chunks, which are nearly always smaller than a page, the transport could expose memory outside the I/O buffer. FRWR allows byte-aligned memory registration, so let's use it as it was intended. Reported-by:Sagi Grimberg <sagig@mellanox.com> Signed-off-by:
Chuck Lever <chuck.lever@oracle.com> Tested-by:
Devesh Sharma <Devesh.Sharma@Emulex.Com> Tested-by:
Meghana Cheripady <Meghana.Cheripady@Emulex.Com> Tested-by:
Veeresh U. Kokatnur <veereshuk@chelsio.com> Signed-off-by:
Anna Schumaker <Anna.Schumaker@Netapp.com>
Showing
Please register or sign in to comment