1. 08 10月, 2014 3 次提交
  2. 10 9月, 2014 2 次提交
  3. 29 8月, 2014 1 次提交
  4. 18 8月, 2014 2 次提交
    • J
      nfsd: call nfs4_put_deleg_lease outside of state_lock · afbda402
      Jeff Layton 提交于
      Currently, we hold the state_lock when releasing the lease. That's
      potentially problematic in the future if we allow for setlease methods
      that can sleep. Move the nfs4_put_deleg_lease call out of the delegation
      unhashing routine (which was always a bit goofy anyway), and into the
      unlocked sections of the callers of unhash_delegation_locked.
      Signed-off-by: NJeff Layton <jlayton@primarydata.com>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      afbda402
    • J
      nfsd: protect lease-related nfs4_file fields with fi_lock · 6bcc034e
      Jeff Layton 提交于
      Currently these fields are protected with the state_lock, but that
      doesn't really make a lot of sense. These fields are "private" to the
      nfs4_file, and can be protected with the more granular fi_lock.
      
      The fi_lock is already held when setting these fields. Make the code
      hold the fp->fi_lock when clearing the lease-related fields in the
      nfs4_file, and no longer require that the state_lock be held when
      calling into this function.
      
      To prevent lock inversion with the i_lock, we also move the vfs_setlease
      and fput calls outside of the fi_lock. This also sets us up for allowing
      vfs_setlease calls to block in the future.
      
      Finally, remove a redundant NULL pointer check. unhash_delegation_locked
      locks the fp->fi_lock prior to that check, so fp in that function must
      never be NULL.
      Signed-off-by: NJeff Layton <jlayton@primarydata.com>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      6bcc034e
  5. 06 8月, 2014 1 次提交
  6. 05 8月, 2014 23 次提交
  7. 02 8月, 2014 8 次提交