1. 02 10月, 2010 17 次提交
  2. 27 9月, 2010 2 次提交
  3. 23 9月, 2010 3 次提交
  4. 22 9月, 2010 2 次提交
  5. 13 9月, 2010 1 次提交
  6. 08 9月, 2010 3 次提交
  7. 03 9月, 2010 1 次提交
  8. 27 8月, 2010 4 次提交
  9. 18 8月, 2010 1 次提交
  10. 10 8月, 2010 1 次提交
    • C
      pass a struct path to vfs_statfs · ebabe9a9
      Christoph Hellwig 提交于
      We'll need the path to implement the flags field for statvfs support.
      We do have it available in all callers except:
      
       - ecryptfs_statfs.  This one doesn't actually need vfs_statfs but just
         needs to do a caller to the lower filesystem statfs method.
       - sys_ustat.  Add a non-exported statfs_by_dentry helper for it which
         doesn't won't be able to fill out the flags field later on.
      
      In addition rename the helpers for statfs vs fstatfs to do_*statfs instead
      of the misleading vfs prefix.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      ebabe9a9
  11. 07 8月, 2010 5 次提交
    • J
      nfsd4: fix file open accounting for RDWR opens · 998db52c
      J. Bruce Fields 提交于
      Commit f9d7562f "nfsd4: share file
      descriptors between stateid's" didn't correctly account for O_RDWR opens.
      Symptoms include leaked files, resulting in failures to unmount and/or
      warnings about orphaned inodes on reboot.
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      998db52c
    • J
      nfsd: don't allow setting maxblksize after svc created · 7fa53cc8
      J. Bruce Fields 提交于
      It's harmless to set this after the server is created, but also
      ineffective, since the value is only used at the time of
      svc_create_pooled().  So fail the attempt, in keeping with the pattern
      set by write_versions, write_{lease,grace}time and write_recoverydir.
      
      (This could break userspace that tried to write to nfsd/max_block_size
      between setting up sockets and starting the server.  However, such code
      wouldn't have worked anyway, and I don't know of any examples--rpc.nfsd
      in nfs-utils, probably the only user of the interface, doesn't do that.)
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      7fa53cc8
    • 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
    • B
      nfsd41: Fix a crash when a callback is retried · c18c821f
      Boaz Harrosh 提交于
      If a callback is retried at nfsd4_cb_recall_done() due to
      some error, the returned rpc reply crashes here:
      
      @@ -514,6 +514,7 @@ decode_cb_sequence(struct xdr_stream *xdr, struct nfsd4_cb_sequence *res,
       	u32 dummy;
       	__be32 *p;
      
       +	BUG_ON(!res);
       	if (res->cbs_minorversion == 0)
       		return 0;
      
      [BUG_ON added for demonstration]
      
      This is because the nfsd4_cb_done_sequence() has NULLed out
      the task->tk_msg.rpc_resp pointer.
      
      Also eventually the rpc would use the new slot without making
      sure it is free by calling nfsd41_cb_setup_sequence().
      
      This problem was introduced by a 4.1 protocol addition patch:
      	[0421b5c5] nfsd41: Backchannel: Implement cb_recall over NFSv4.1
      
      Which was overlooking the possibility of an RPC callback retries.
      For not-4.1 case redoing the _prepare is harmless.
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      c18c821f
    • 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