1. 23 Oct, 2010 1 commit
  2. 17 Sep, 2010 3 commits
  3. 14 May, 2010 2 commits
  4. 30 Mar, 2010 1 commit
    • Tejun Heo's avatar
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking... · 5a0e3ad6
      Tejun Heo authored
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
      
      percpu.h is included by sched.h and module.h and thus ends up being
      included when building most .c files.  percpu.h includes slab.h which
      in turn includes gfp.h making everything defined by the two files
      universally available and complicating inclusion dependencies.
      
      percpu.h -> slab.h dependency is about to be removed.  Prepare for
      this change by updating users of gfp and slab facilities include those
      headers directly instead of assuming availability.  As this conversion
      needs to touch large number of source files, the following script is
      used as the basis of conversion.
      
        http://userweb.kernel.org/~tj/misc/slabh-sweep.py
      
      The script does the followings.
      
      * Scan files for gfp and slab usages and update includes such that
        only the necessary includes are there.  ie. if only gfp is used,
        gfp.h, if slab is used, slab.h.
      
      * When the script inserts a new include, it looks at the include
        bloc...
      5a0e3ad6
  5. 10 Feb, 2010 1 commit
  6. 24 Sep, 2009 1 commit
  7. 19 Mar, 2009 1 commit
    • Trond Myklebust's avatar
      NFS: Optimise NFS close() · 7fe5c398
      Trond Myklebust authored
      
      Close-to-open cache consistency rules really only require us to flush out
      writes on calls to close(), and require us to revalidate attributes on the
      very last close of the file.
      
      Currently we appear to be doing a lot of extra attribute revalidation
      and cache flushes.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      7fe5c398
  8. 07 Oct, 2008 1 commit
    • EG Keizer's avatar
      nfs: authenticated deep mounting · 37ca8f5c
      EG Keizer authored
      
      Allow mount to do authenticated mounts below the root of the exported tree.
      The wording in RFC 2623, sec 2.3.2. allows fsinfo with UNIX authentication
      on the root of the export. Mounts are not always done on the root
      of the exported tree. Especially autoumounts often mount below the root of
      the exported tree.
      Some server implementations (justly) require full authentication for the
      so-called deep mounts. The old code used AUTH_SYS only. This caused deep
      mounts to fail on systems requiring stronger authentication..
      The client should try both authentication types and use the first one that
      succeeds.
      This method was already partially implemented. This patch completes
      the implementation for NFS2 and NFS3.
      This patch was developed to allow Debian systems to automount home directories
      on Solaris servers with krb5 authentication.
      
      Tested on kernel 2.6.24-etchnhalf.1
      Signed-off-by: default avatarE.G. Keizer <keie@few.vu.nl>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
      Signed-off-by: ...
      37ca8f5c
  9. 09 Jul, 2008 3 commits
  10. 16 May, 2008 1 commit
  11. 30 Jan, 2008 2 commits
    • Chuck Lever's avatar
      NLM/NFS: Use cached nlm_host when calling nlmclnt_proc() · 1093a60e
      Chuck Lever authored
      
      Now that each NFS mount point caches its own nlm_host structure, it can be
      passed to nlmclnt_proc() for each lock request.  By pinning an nlm_host for
      each mount point, we trade the overhead of looking up or creating a fresh
      nlm_host struct during every NLM procedure call for a little extra memory.
      
      We also restrict the nlmclnt_proc symbol to limit the use of this call to
      in-tree modules.
      
      Note that nlm_lookup_host() (just removed from the client's per-request
      NLM processing) could also trigger an nlm_host garbage collection.  Now
      client-side nlm_host garbage collection occurs only during NFS mount
      processing.  Since the NFS client now holds a reference on these nlm_host
      structures, they wouldn't have been affected by garbage collection
      anyway.
      
      Given that nlm_lookup_host() reorders the global nlm_host chain after
      every successful lookup, and that a garbage collection could be triggered
      during the call, we've removed a significant amount of per-NLM-request
      CPU processing overhead.
      
      Sidebar: there are only a few remaining references to the internals of
      NFS inodes in the client-side NLM code.  The only references I found are
      related to extracting or comparing the inode's file handle via NFS_FH().
      One is in nlmclnt_grant(); the other is in nlmclnt_setlockargs().
      Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      1093a60e
    • Trond Myklebust's avatar
      NFS: Clean up the (commit|read|write)_setup() callback routines · bdc7f021
      Trond Myklebust authored
      
      Move the common code for setting up the nfs_write_data and nfs_read_data
      structures into fs/nfs/read.c, fs/nfs/write.c and fs/nfs/direct.c.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      bdc7f021
  12. 21 Oct, 2007 1 commit
  13. 09 Oct, 2007 3 commits
  14. 19 Jul, 2007 2 commits
  15. 08 May, 2007 1 commit
  16. 03 Feb, 2007 1 commit
  17. 08 Dec, 2006 1 commit
  18. 06 Dec, 2006 2 commits
  19. 27 Sep, 2006 1 commit
  20. 23 Sep, 2006 4 commits
  21. 09 Jun, 2006 1 commit
    • David Howells's avatar
      NFS: Split fs/nfs/inode.c · f7b422b1
      David Howells authored
      
      As fs/nfs/inode.c is rather large, heterogenous and unwieldy, the attached
      patch splits it up into a number of files:
      
       (*) fs/nfs/inode.c
      
           Strictly inode specific functions.
      
       (*) fs/nfs/super.c
      
           Superblock management functions for NFS and NFS4, normal access, clones
           and referrals.  The NFS4 superblock functions _could_ move out into a
           separate conditionally compiled file, but it's probably not worth it as
           there're so many common bits.
      
       (*) fs/nfs/namespace.c
      
           Some namespace-specific functions have been moved here.
      
       (*) fs/nfs/nfs4namespace.c
      
           NFS4-specific namespace functions (this could be merged into the previous
           file).  This file is conditionally compiled.
      
       (*) fs/nfs/internal.h
      
           Inter-file declarations, plus a few simple utility functions moved from
           fs/nfs/inode.c.
      
           Additionally, all the in-.c-file externs have been moved here, and those
           files they were moved from now includes this file.
      
      For the most part, the functions have not been changed, only some multiplexor
      functions have changed significantly.
      
      I've also:
      
       (*) Added some extra banner comments above some functions.
      
       (*) Rearranged the function order within the files to be more logical and
           better grouped (IMO), though someone may prefer a different order.
      
       (*) Reduced the number of #ifdefs in .c files.
      
       (*) Added missing __init and __exit directives.
      Signed-Off-By: default avatarDavid Howells <dhowells@redhat.com>
      f7b422b1
  22. 20 Mar, 2006 3 commits
    • Trond Myklebust's avatar
      NFS: Cleanup of NFS read code · ec06c096
      Trond Myklebust authored
      
      Same callback hierarchy inversion as for the NFS write calls. This patch is
      not strictly speaking needed by the O_DIRECT code, but avoids confusing
      differences between the asynchronous read and write code.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      ec06c096
    • Trond Myklebust's avatar
      NFS: Cleanup of NFS write code in preparation for asynchronous o_direct · 788e7a89
      Trond Myklebust authored
      
      This patch inverts the callback hierarchy for NFS write calls.
      
      Instead of having the NFSv2/v3/v4-specific code set up the RPC callback
      ops, we allow the original caller to do so. This allows for more
      flexibility w.r.t. how to set up and tear down the nfs_write_data
      structure while still allowing the NFSv3/v4 code to perform error
      handling.
      
      The greater flexibility is needed by the asynchronous O_DIRECT code, which
      wants to be able to hold on to the original nfs_write_data structures after
      the WRITE RPC call has completed in order to be able to replay them if the
      COMMIT call determines that the server has rebooted.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      788e7a89
    • Chuck Lever's avatar
      SUNRPC: eliminate rpc_call() · dead28da
      Chuck Lever authored
      
      Clean-up: replace rpc_call() helper with direct call to rpc_call_sync.
      
      This makes NFSv2 and NFSv3 synchronous calls more computationally
      efficient, and reduces stack consumption in functions that used to
      invoke rpc_call more than once.
      
      Test plan:
      Compile kernel with CONFIG_NFS enabled.  Connectathon on NFS version 2,
      version 3, and version 4 mount points.
      Signed-off-by: default avatarChuck Lever <cel@netapp.com>
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      dead28da
  23. 06 Jan, 2006 2 commits
  24. 03 Dec, 2005 1 commit