• Chuck Lever's avatar
    xprtrdma: Remove ALLPHYSICAL memory registration mode · 2dc3a69d
    Chuck Lever authored
    No HCA or RNIC in the kernel tree requires the use of ALLPHYSICAL.
    
    ALLPHYSICAL advertises in the clear on the network fabric an R_key
    that is good for all of the client's memory. No known exploit
    exists, but theoretically any user on the server can use that R_key
    on the client's QP to read or update any part of the client's memory.
    
    ALLPHYSICAL exposes the client to server bugs, including:
     o base/bounds errors causing data outside the i/o buffer to be
       accessed
     o RDMA access after reply causing data corruption and/or integrity
       fail
    
    ALLPHYSICAL can't protect application memory regions from server
    update after a local signal or soft timeout has terminated an RPC.
    
    ALLPHYSICAL chunks are no larger than a page. Special cases to
    handle small chunks and long chunk lists have been a source of
    implementation complexity and bugs.
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Tested-by: default avatarSteve Wise <swise@opengridcomputing.com>
    Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
    2dc3a69d
verbs.c 31.8 KB