1. 17 Dec, 2014 3 commits
    • Yan, Zheng's avatar
      ceph: introduce a new inode flag indicating if cached dentries are ordered · 70db4f36
      Yan, Zheng authored
      After creating/deleting/renaming file, offsets of sibling dentries may
      change. So we can not use cached dentries to satisfy readdir. But we can
      still use the cached dentries to conclude -ENOENT for lookup.
      
      This patch introduces a new inode flag indicating if child dentries are
      ordered. The flag is set at the same time marking a directory complete.
      After creating/deleting/renaming file, we clear the flag on directory
      inode. This prevents ceph_readdir() from using cached dentries to satisfy
      readdir syscall.
      Signed-off-by: default avatarYan, Zheng <zyan@redhat.com>
      70db4f36
    • Ilya Dryomov's avatar
      libceph: nuke ceph_kvfree() · 4965fc38
      Ilya Dryomov authored
      Use kvfree() from linux/mm.h instead, which is identical.  Also fix the
      ceph_buffer comment: we will allocate with kmalloc() up to 32k - the
      value of PAGE_ALLOC_COSTLY_ORDER, but that really is just an
      implementation detail so don't mention it at all.
      Signed-off-by: default avatarIlya Dryomov <idryomov@redhat.com>
      4965fc38
    • Yan, Zheng's avatar
      ceph: fix file lock interruption · 9280be24
      Yan, Zheng authored
      When a lock operation is interrupted, current code sends a unlock request to
      MDS to undo the lock operation. This method does not work as expected because
      the unlock request can drop locks that have already been acquired.
      
      The fix is use the newly introduced CEPH_LOCK_FCNTL_INTR/CEPH_LOCK_FLOCK_INTR
      requests to interrupt blocked file lock request. These requests do not drop
      locks that have alread been acquired, they only interrupt blocked file lock
      request.
      Signed-off-by: default avatarYan, Zheng <zyan@redhat.com>
      9280be24
  2. 07 Dec, 2014 2 commits
  3. 06 Dec, 2014 2 commits
  4. 05 Dec, 2014 7 commits
  5. 04 Dec, 2014 5 commits
  6. 03 Dec, 2014 21 commits