1. 22 8月, 2012 1 次提交
  2. 25 7月, 2012 2 次提交
  3. 01 6月, 2012 2 次提交
  4. 12 4月, 2012 2 次提交
  5. 04 2月, 2012 2 次提交
  6. 01 2月, 2012 1 次提交
  7. 01 11月, 2011 1 次提交
    • P
      fs: add module.h to files that were implicitly using it · 143cb494
      Paul Gortmaker 提交于
      Some files were using the complete module.h infrastructure without
      actually including the header at all.  Fix them up in advance so
      once the implicit presence is removed, we won't get failures like this:
      
        CC [M]  fs/nfsd/nfssvc.o
      fs/nfsd/nfssvc.c: In function 'nfsd_create_serv':
      fs/nfsd/nfssvc.c:335: error: 'THIS_MODULE' undeclared (first use in this function)
      fs/nfsd/nfssvc.c:335: error: (Each undeclared identifier is reported only once
      fs/nfsd/nfssvc.c:335: error: for each function it appears in.)
      fs/nfsd/nfssvc.c: In function 'nfsd':
      fs/nfsd/nfssvc.c:555: error: implicit declaration of function 'module_put_and_exit'
      make[3]: *** [fs/nfsd/nfssvc.o] Error 1
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      143cb494
  8. 25 10月, 2011 1 次提交
  9. 18 7月, 2011 1 次提交
    • J
      nfsd: turn on reply cache for NFSv4 · 1091006c
      J. Bruce Fields 提交于
      It's sort of ridiculous that we've never had a working reply cache for
      NFSv4.
      
      On the other hand, we may still not: our current reply cache is likely
      not very good, especially in the TCP case (which is the only case that
      matters for v4).  What we really need here is some serious testing.
      
      Anyway, here's a start.
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      1091006c
  10. 16 7月, 2011 1 次提交
    • N
      nfsd: Remove deprecated nfsctl system call and related code. · 49b28684
      NeilBrown 提交于
      As promised in feature-removal-schedule.txt it is time to
      remove the nfsctl system call.
      
      Userspace has perferred to not use this call throughout 2.6 and it has been
      excluded in the default configuration since 2.6.36 (9 months ago).
      
      So this patch removes all the code that was being compiled out.
      
      There are still references to sys_nfsctl in various arch systemcall tables
      and related code.  These should be cleaned out too, probably in the next
      merge window.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      49b28684
  11. 05 1月, 2011 1 次提交
    • J
      svcrpc: simpler request dropping · 9e701c61
      J. Bruce Fields 提交于
      Currently we use -EAGAIN returns to determine when to drop a deferred
      request.  On its own, that is error-prone, as it makes us treat -EAGAIN
      returns from other functions specially to prevent inadvertent dropping.
      
      So, use a flag on the request instead.
      
      Returning an error on request deferral is still required, to prevent
      further processing, but we no longer need worry that an error return on
      its own could result in a drop.
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      9e701c61
  12. 02 10月, 2010 1 次提交
  13. 07 8月, 2010 2 次提交
    • J
      nfsd: initialize nfsd versions before creating svc · e844a7b9
      J. Bruce Fields 提交于
      Commit 59db4a0c "nfsd: move more into
      nfsd_startup()" inadvertently moved nfsd_versions after
      nfsd_create_svc().  On older distributions using an rpc.nfsd that does
      not explicitly set the list of nfsd versions, this results in
      svc-create_pooled() being called with an empty versions array.  The
      resulting incomplete initialization leads to a NULL dereference in
      svc_process_common() the first time a client accesses the server.
      
      Move nfsd_reset_versions() back before the svc_create_pooled(); this
      time, put it closer to the svc_create_pooled() call, to make this
      mistake more difficult in the future.
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      e844a7b9
    • J
      nfsd: fix startup/shutdown order bug · 774f8bbd
      J. Bruce Fields 提交于
      We must create the server before we can call init_socks or check the
      number of threads.
      
      Symptoms were a NULL pointer dereference in nfsd_svc().  Problem
      identified by Jeff Layton.
      
      Also fix a minor cleanup-on-error case in nfsd_startup().
      Reported-by: NTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      774f8bbd
  14. 23 7月, 2010 5 次提交
  15. 15 5月, 2010 1 次提交
  16. 16 12月, 2009 1 次提交
  17. 15 12月, 2009 2 次提交
  18. 14 11月, 2009 1 次提交
  19. 16 9月, 2009 1 次提交
  20. 02 9月, 2009 2 次提交
    • D
      CRED: Add some configurable debugging [try #6] · e0e81739
      David Howells 提交于
      Add a config option (CONFIG_DEBUG_CREDENTIALS) to turn on some debug checking
      for credential management.  The additional code keeps track of the number of
      pointers from task_structs to any given cred struct, and checks to see that
      this number never exceeds the usage count of the cred struct (which includes
      all references, not just those from task_structs).
      
      Furthermore, if SELinux is enabled, the code also checks that the security
      pointer in the cred struct is never seen to be invalid.
      
      This attempts to catch the bug whereby inode_has_perm() faults in an nfsd
      kernel thread on seeing cred->security be a NULL pointer (it appears that the
      credential struct has been previously released):
      
      	http://www.kerneloops.org/oops.php?number=252883Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NJames Morris <jmorris@namei.org>
      e0e81739
    • A
      nfsd41: replace page based DRC with buffer based DRC · 557ce264
      Andy Adamson 提交于
      Use NFSD_SLOT_CACHE_SIZE size buffers for sessions DRC instead of holding nfsd
      pages in cache.
      
      Connectathon testing has shown that 1024 bytes for encoded compound operation
      responses past the sequence operation is sufficient, 512 bytes is a little too
      small. Set NFSD_SLOT_CACHE_SIZE to 1024.
      
      Allocate memory for the session DRC in the CREATE_SESSION operation
      to guarantee that the memory resource is available for caching responses.
      Allocate each slot individually in preparation for slot table size negotiation.
      
      Remove struct nfsd4_cache_entry and helper functions for the old page-based
      DRC.
      
      The iov_len calculation in nfs4svc_encode_compoundres is now always
      correct.  Replay is now done in nfsd4_sequence under the state lock, so
      the session ref count is only bumped on non-replay. Clean up the
      nfs4svc_encode_compoundres session logic.
      
      The nfsd4_compound_state statp pointer is also not used.
      Remove nfsd4_set_statp().
      
      Move useful nfsd4_cache_entry fields into nfsd4_slot.
      
      Signed-off-by: Andy Adamson <andros@netapp.com
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      557ce264
  21. 26 8月, 2009 1 次提交
  22. 29 7月, 2009 2 次提交
  23. 15 7月, 2009 1 次提交
    • A
      nfsd41: use globals for DRC limits · 4bd9b0f4
      Andy Adamson 提交于
      The version 4.1 DRC memory limit and tracking variables are server wide and
      session specific. Replace struct svc_serv fields with globals.
      Stop using the svc_serv sv_lock.
      
      Add a spinlock to serialize access to the DRC limit management variables which
      change on session creation and deletion (usage counter) or (future)
      administrative action to adjust the total DRC memory limit.
      Signed-off-by: NAndy Adamson <andros@netapp.com>
      Signed-off-by: NBenny Halevy <bhalevy@panasas.com>
      4bd9b0f4
  24. 13 7月, 2009 1 次提交
  25. 19 6月, 2009 2 次提交
    • N
      nfsd: optimise the starting of zero threads when none are running. · 671e1fcf
      NeilBrown 提交于
      Currently, if we ask to set then number of nfsd threads to zero when
      there are none running, we set up all the sockets and register the
      service, and then tear it all down again.
      This is pointless.
      
      So detect that case and exit promptly.
      (also remove an assignment to 'error' which was never used.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      Acked-by: NJeff Layton <jlayton@redhat.com>
      671e1fcf
    • N
      nfsd: don't take nfsd_mutex twice when setting number of threads. · 82e12fe9
      NeilBrown 提交于
      Currently when we write a number to 'threads' in nfsdfs,
      we take the nfsd_mutex, update the number of threads, then take the
      mutex again to read the number of threads.
      
      Mostly this isn't a big deal.  However if we are write '0', and
      portmap happens to be dead, then we can get unpredictable behaviour.
      If the nfsd threads all got killed quickly and the last thread is
      waiting for portmap to respond, then the second time we take the mutex
      we will block waiting for the last thread.
      However if the nfsd threads didn't die quite that fast, then there
      will be no contention when we try to take the mutex again.
      
      Unpredictability isn't fun, and waiting for the last thread to exit is
      pointless, so avoid taking the lock twice.
      To achieve this, get nfsd_svc return a non-negative number of active
      threads when not returning a negative error.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      82e12fe9
  26. 07 4月, 2009 1 次提交
  27. 04 4月, 2009 1 次提交