1. 04 4月, 2020 3 次提交
  2. 03 4月, 2020 3 次提交
  3. 02 4月, 2020 9 次提交
  4. 01 4月, 2020 1 次提交
  5. 29 3月, 2020 1 次提交
    • T
      Merge tag 'nfs-rdma-for-5.7-1' of git://git.linux-nfs.org/projects/anna/linux-nfs · f764a1e1
      Trond Myklebust 提交于
      NFSoRDMA Client Updates for Linux 5.7
      
      New Features:
      - Allow one active connection and several zombie connections to prevent
        blocking if the remote server is unresponsive.
      
      Bugfixes and Cleanups:
      - Enhance MR-related trace points
      - Refactor connection set-up and disconnect functions
      - Make Protection Domains per-connection instead of per-transport
      - Merge struct rpcrdma_ia into rpcrdma_ep
      f764a1e1
  6. 28 3月, 2020 20 次提交
  7. 27 3月, 2020 3 次提交
    • C
      xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt · e28ce900
      Chuck Lever 提交于
      Change the rpcrdma_xprt_disconnect() function so that it no longer
      waits for the DISCONNECTED event.  This prevents blocking if the
      remote is unresponsive.
      
      In rpcrdma_xprt_disconnect(), the transport's rpcrdma_ep is
      detached. Upon return from rpcrdma_xprt_disconnect(), the transport
      (r_xprt) is ready immediately for a new connection.
      
      The RDMA_CM_DEVICE_REMOVAL and RDMA_CM_DISCONNECTED events are now
      handled almost identically.
      
      However, because the lifetimes of rpcrdma_xprt structures and
      rpcrdma_ep structures are now independent, creating an rpcrdma_ep
      needs to take a module ref count. The ep now owns most of the
      hardware resources for a transport.
      
      Also, a kref is needed to ensure that rpcrdma_ep sticks around
      long enough for the cm_event_handler to finish.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NAnna Schumaker <Anna.Schumaker@Netapp.com>
      e28ce900
    • C
      xprtrdma: Extract sockaddr from struct rdma_cm_id · 745b734c
      Chuck Lever 提交于
      rpcrdma_cm_event_handler() is always passed an @id pointer that is
      valid. However, in a subsequent patch, we won't be able to extract
      an r_xprt in every case. So instead of using the r_xprt's
      presentation address strings, extract them from struct rdma_cm_id.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NAnna Schumaker <Anna.Schumaker@Netapp.com>
      745b734c
    • C
      xprtrdma: Merge struct rpcrdma_ia into struct rpcrdma_ep · 93aa8e0a
      Chuck Lever 提交于
      I eventually want to allocate rpcrdma_ep separately from struct
      rpcrdma_xprt so that on occasion there can be more than one ep per
      xprt.
      
      The new struct rpcrdma_ep will contain all the fields currently in
      rpcrdma_ia and in rpcrdma_ep. This is all the device and CM settings
      for the connection, in addition to per-connection settings
      negotiated with the remote.
      
      Take this opportunity to rename the existing ep fields from rep_* to
      re_* to disambiguate these from struct rpcrdma_rep.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NAnna Schumaker <Anna.Schumaker@Netapp.com>
      93aa8e0a