diff options
author | Krutika Dhananjay <kdhananj@redhat.com> | 2014-06-05 09:22:34 +0530 |
---|---|---|
committer | Pranith Kumar Karampuri <pkarampu@redhat.com> | 2014-06-11 18:42:54 -0700 |
commit | b9856eca80e2f820c88f60fdc6cb1427905671af (patch) | |
tree | e69c08f0b929b0bdf3fd6191a4f0d2eb6e2b5d50 /xlators/features/locks/src/locks.h | |
parent | 8f88510feb49e362531a3cae4b5e295e7ca155e9 (diff) |
features/locks: Clean up logging of cleanup in DISCONNECT codepath
Now, gfid is printed as opposed to path in cleanup messages.
Also, refkeeper update is eliminated in inodelk and entrylk.
Instead, the patch ensures inode and pl_inode are kept alive as
long as there is atleast one lock (granted/blocked) on an inode.
Also, every inode is unref'd appropriately on a DISCONNECT from the
lock-owning client.
Change-Id: I531b1a02fe1b889fdd7f54b1fd522e78a18ed1df
BUG: 1104915
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
Reviewed-on: http://review.gluster.org/7981
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
Tested-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
Diffstat (limited to 'xlators/features/locks/src/locks.h')
-rw-r--r-- | xlators/features/locks/src/locks.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xlators/features/locks/src/locks.h b/xlators/features/locks/src/locks.h index 8c2a6f867ee..f761b3d4a00 100644 --- a/xlators/features/locks/src/locks.h +++ b/xlators/features/locks/src/locks.h @@ -146,6 +146,10 @@ struct __pl_inode { inode_t *refkeeper; /* hold refs on an inode while locks are held to prevent pruning */ + uuid_t gfid; /* placeholder for gfid of the inode */ + inode_t *inode; /* pointer to be used for ref and unref + of inode_t as long as there are + locks on it */ }; typedef struct __pl_inode pl_inode_t; |