[openib-general] FMR and how they work

Libor Michalek libor at topspin.com
Tue May 3 10:13:37 PDT 2005


On Mon, May 02, 2005 at 02:59:26PM -0700, Fab Tillier wrote:
> > From: Dror Goldenberg [mailto:gdror at mellanox.co.il]
> >
> > You're welcomed to measure. I think that FMRs will be the fastest way
> > to create mapping. Faster than MWs.
> 
> The reason I asked is SDP went down the FMR path, but that can only work
> properly if the remote peer is trusted.  I don't know if this assumption
> should be made - the same way that we shouldn't trust user-mode processes,
> we shouldn't trust remote user-mode processes.  It is possible for an SDP
> implementation to be in user-mode.  Thus a window exists where a user-mode
> process on a remote node could corrupt memory via RDMA to stale (but still
> cached in the HCA) regions.  The pages that used to represent those regions
> could well have been freed and reallocated.  This design decision led me to
> believe that MWs were significantly slower than FMRs (hence the tradeoff
> with system security).
> 
> Note that I'm not fully versed in the SDP implementation, so if it addresses
> this, great!

  Nope, not addressed. A rogue SDP peer implementation could write
into memory that is no longer being used as an active AIO buffer.
One way to at least isolate the risk is to add a callback for when
the mapping is changed/released and then unlock the buffer. At least
the memory will not be used for anything else, even if it could
still result in corruption of that buffer...

-Libor



More information about the general mailing list