From 5fd43d28ff12ac1c4e4d60e77a38659013b1ab3a Mon Sep 17 00:00:00 2001 From: Mohammed Junaid Ahmed Date: Mon, 3 Jan 2011 00:37:22 +0000 Subject: protocol/server: Distinguishing the locks based on the type of fop like inodelk and entrylk. Currently, the protocol server considers entrylk to be held only on directories and inodelk on files and thus when a client unmounts itself while holding locks, it fails to free entrylk locks held on files and inodelk locks held on directories. Signed-off-by: Junaid Signed-off-by: Anand V. Avati BUG: 2221 (Failed to free Inodlk locks on directories when the client holding the locks was unmounted before releasing the locks held.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2221 --- xlators/protocol/server/src/server-helpers.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'xlators/protocol/server/src/server-helpers.h') diff --git a/xlators/protocol/server/src/server-helpers.h b/xlators/protocol/server/src/server-helpers.h index 2da95fe2d..4fe03db26 100644 --- a/xlators/protocol/server/src/server-helpers.h +++ b/xlators/protocol/server/src/server-helpers.h @@ -52,13 +52,15 @@ gf_add_locker (struct _lock_table *table, const char *volume, loc_t *loc, fd_t *fd, pid_t pid, - uint64_t owner); + uint64_t owner, + glusterfs_fop_t type); int32_t gf_del_locker (struct _lock_table *table, const char *volume, loc_t *loc, fd_t *fd, - uint64_t owner); + uint64_t owner, + glusterfs_fop_t type); void server_print_request (call_frame_t *frame); -- cgit