From 9d4c8b3909b8f572a732b884062b70efa51e4956 Mon Sep 17 00:00:00 2001 From: Raghavendra G Date: Sat, 19 May 2012 14:49:21 +0530 Subject: performance/quick-read: fix race-conditions in qr_unlink. The list of fds on which open needs to be done as part of unlink, was being modified at different places using different locks. This resulted in a race-condition where open was marked as in-transit, but fdctx was removed from the list of fds on which open was being sent even before open was done. Because of this, open_in_transit would be set forever (as an open was never actually sent, there would be no open_cbk called and hence we could not reset the variable), blocking all the future fd based fops on this fd. Change-Id: Ie84a55bee578869a9a060a094ba28480e7643ae8 BUG: 819490 Signed-off-by: Raghavendra G Reviewed-on: http://review.gluster.com/3372 Tested-by: Gluster Build System Reviewed-by: Vijay Bellur --- xlators/performance/quick-read/src/quick-read-mem-types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'xlators/performance/quick-read/src/quick-read-mem-types.h') diff --git a/xlators/performance/quick-read/src/quick-read-mem-types.h b/xlators/performance/quick-read/src/quick-read-mem-types.h index 9a6be76b0..73c87c819 100644 --- a/xlators/performance/quick-read/src/quick-read-mem-types.h +++ b/xlators/performance/quick-read/src/quick-read-mem-types.h @@ -20,7 +20,7 @@ enum gf_qr_mem_types_ { gf_qr_mt_qr_conf_t, gf_qr_mt_qr_priority_t, gf_qr_mt_qr_private_t, - gf_qr_mt_qr_dentry_t, + gf_qr_mt_qr_unlink_ctx_t, gf_qr_mt_end }; #endif -- cgit