diff options
author | Anand Avati <avati@gluster.com> | 2009-10-15 19:36:47 +0000 |
---|---|---|
committer | Anand V. Avati <avati@dev.gluster.com> | 2009-10-16 05:13:01 -0700 |
commit | c8f39bea04c6021243d1ab2bcea450a0f067aabc (patch) | |
tree | fdfcc4c0bc7f852184476a274060c2144ad3c691 /xlators/features/locks/src/posix.c | |
parent | d3722f7546bdcfeed7cf3c2745c1bfafa7fa79a4 (diff) |
locks: keep ref on the inode while locks are held
keeping refs on the inode while there are held locks prevents the
inode from getting pruned away
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112
Diffstat (limited to 'xlators/features/locks/src/posix.c')
-rw-r--r-- | xlators/features/locks/src/posix.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/xlators/features/locks/src/posix.c b/xlators/features/locks/src/posix.c index f963d5c93..b1eb7e435 100644 --- a/xlators/features/locks/src/posix.c +++ b/xlators/features/locks/src/posix.c @@ -687,6 +687,7 @@ pl_lk (call_frame_t *frame, xlator_t *this, } unwind: + pl_update_refkeeper (this, fd->inode); STACK_UNWIND (frame, op_ret, op_errno, flock); out: return 0; |