• C
    xprtrdma: Remove ALLPHYSICAL memory registration mode · 2dc3a69d
    Chuck Lever 提交于
    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: NChuck Lever <chuck.lever@oracle.com>
    Tested-by: NSteve Wise <swise@opengridcomputing.com>
    Signed-off-by: NAnna Schumaker <Anna.Schumaker@Netapp.com>
    2dc3a69d
verbs.c 31.8 KB