1. 04 12月, 2009 1 次提交
    • C
      SUNRPC: Use a cached RPC client and transport for rpcbind upcalls · c526611d
      Chuck Lever 提交于
      The kernel's rpcbind client creates and deletes an rpc_clnt and its
      underlying transport socket for every upcall to the local rpcbind
      daemon.
      
      When starting a typical NFS server on IPv4 and IPv6, the NFS service
      itself does three upcalls (one per version) times two upcalls (one
      per transport) times two upcalls (one per address family), making 12,
      plus another one for the initial call to unregister previous NFS
      services.  Starting the NLM service adds an additional 13 upcalls,
      for similar reasons.
      
      (Currently the NFS service doesn't start IPv6 listeners, but it will
      soon enough).
      
      Instead, let's create an rpc_clnt for rpcbind upcalls during the
      first local rpcbind query, and cache it.  This saves the overhead of
      creating and destroying an rpc_clnt and a socket for every upcall.
      
      The new logic also prevents the kernel from attempting an RPCB_SET or
      RPCB_UNSET if it knows from the start that the local portmapper does
      not support rpcbind protocol version 4.  This will cut down on the
      number of rpcbind upcalls in legacy environments.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      c526611d
  2. 21 8月, 2009 1 次提交
  3. 27 6月, 2009 1 次提交
  4. 02 2月, 2008 4 次提交
  5. 30 1月, 2008 1 次提交
  6. 07 12月, 2007 1 次提交
  7. 10 10月, 2007 1 次提交
  8. 11 7月, 2007 6 次提交
  9. 15 5月, 2007 1 次提交
  10. 10 5月, 2007 1 次提交
  11. 15 2月, 2007 2 次提交
  12. 06 12月, 2006 2 次提交
  13. 02 10月, 2006 1 次提交
  14. 23 9月, 2006 1 次提交
    • C
      SUNRPC: Eliminate xprt_create_proto and rpc_create_client · ff9aa5e5
      Chuck Lever 提交于
      The two function call API for creating a new RPC client is now obsolete.
      Remove it.
      
      Also, remove an unnecessary check to see whether the caller is capable of
      using privileged network services.  The kernel RPC client always uses a
      privileged ephemeral port by default; callers are responsible for checking
      the authority of users to make use of any RPC service, or for specifying
      that a nonprivileged port is acceptable.
      
      Test plan:
      Repeated runs of Connectathon locking suite.  Check network trace to ensure
      correctness of NLM requests and replies.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      ff9aa5e5
  15. 01 7月, 2006 1 次提交
  16. 28 3月, 2006 3 次提交
  17. 07 1月, 2006 1 次提交
  18. 05 11月, 2005 1 次提交
  19. 24 9月, 2005 1 次提交
  20. 08 9月, 2005 1 次提交
    • B
      [PATCH] sunrpc: cache_register can use wrong module reference · f35279d3
      Bruce Allan 提交于
      When registering an RPC cache, cache_register() always sets the owner as the
      sunrpc module.  However, there are RPC caches owned by other modules.  With
      the incorrect owner setting, the real owning module can be removed potentially
      with an open reference to the cache from userspace.
      
      For example, if one were to stop the nfs server and unmount the nfsd
      filesystem, the nfsd module could be removed eventhough rpc.idmapd had
      references to the idtoname and nametoid caches (i.e.
      /proc/net/rpc/nfs4.<cachename>/channel is still open).  This resulted in a
      system panic on one of our machines when attempting to restart the nfs
      services after reloading the nfsd module.
      
      The following patch adds a 'struct module *owner' field in struct
      cache_detail.  The owner is further assigned to the struct proc_dir_entry
      in cache_register() so that the module cannot be unloaded while user-space
      daemons have an open reference on the associated file under /proc.
      Signed-off-by: NBruce Allan <bwa@us.ibm.com>
      Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
      Cc: Neil Brown <neilb@cse.unsw.edu.au>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      f35279d3
  21. 24 6月, 2005 1 次提交
  22. 23 6月, 2005 3 次提交
  23. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4