1. 08 10月, 2008 1 次提交
    • T
      SUNRPC: Fix autobind on cloned rpc clients · 9a4bd29f
      Trond Myklebust 提交于
      Despite the fact that cloned rpc clients won't have the cl_autobind flag
      set, they may still find themselves calling rpcb_getport_async(). For this
      to happen, it suffices for a _parent_ rpc_clnt to use autobinding, in which
      case any clone may find itself triggering the !xprt_bound() case in
      call_bind().
      
      The correct fix for this is to walk back up the tree of cloned rpc clients,
      in order to find the parent that 'owns' the transport, either because it
      has clnt->cl_autobind set, or because it originally created the
      transport...
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      9a4bd29f
  2. 16 7月, 2008 5 次提交
  3. 10 7月, 2008 6 次提交
  4. 09 7月, 2008 2 次提交
  5. 06 3月, 2008 1 次提交
  6. 26 2月, 2008 1 次提交
    • T
      SUNRPC: Run rpc timeout functions as callbacks instead of in softirqs · 5d00837b
      Trond Myklebust 提交于
      An audit of the current RPC timeout functions shows that they don't really
      ever need to run in the softirq context. As long as the softirq is
      able to signal that the wakeup is due to a timeout (which it can do by
      setting task->tk_status to -ETIMEDOUT) then the callback functions can just
      run as standard task->tk_callback functions (in the rpciod/process
      context).
      
      The only possible border-line case would be xprt_timer() for the case of
      UDP, when the callback is used to reduce the size of the transport
      congestion window. In testing, however, the effect of moving that update
      to a callback would appear to be minor.
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      5d00837b
  7. 30 1月, 2008 11 次提交
  8. 07 12月, 2007 1 次提交
  9. 10 10月, 2007 12 次提交