From 32fff8967f10efa391815c06093086a9ee276762 Mon Sep 17 00:00:00 2001 From: Raghavendra G Date: Mon, 21 Jan 2013 10:54:05 +0530 Subject: performance/quick-read: fix race condition in unlink use same lock (inode->lock), while incrementing/decrementing local->open_count. Change-Id: I08cbab5b5dec09b6057f43324fe3152f1564ce46 BUG: 902174 Signed-off-by: Raghavendra G Reviewed-on: http://review.gluster.org/4396 Reviewed-by: Anand Avati Tested-by: Anand Avati --- xlators/performance/quick-read/src/quick-read.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xlators/performance/quick-read/src/quick-read.c b/xlators/performance/quick-read/src/quick-read.c index 0e09a871aa1..71fd2abfb54 100644 --- a/xlators/performance/quick-read/src/quick-read.c +++ b/xlators/performance/quick-read/src/quick-read.c @@ -3180,11 +3180,11 @@ qr_unlink_helper (call_frame_t *frame, xlator_t *this, loc_t *loc, int xflag, local = frame->local; - LOCK (&local->lock); + LOCK (&loc->inode->lock); { open_count = --local->open_count; } - UNLOCK (&local->lock); + UNLOCK (&loc->inode->lock); if (open_count > 0) { goto out; -- cgit