From 4f6ae853ffa9d06446407f389aaef61ac0b3b424 Mon Sep 17 00:00:00 2001 From: Mohit Agrawal Date: Wed, 19 Sep 2018 14:32:22 +0530 Subject: glusterd: Use GF_ATOMIC to update 'blockers' counter at glusterd_conf Problem: Currently in glusterd code uses sync_lock/sync_unlock to update blockers counter which could add delays to the overall transaction phase escpecially when there's a batch of volume stop operations processed by glusterd in brick multiplexing mode. Solution: Use GF_ATOMIC to update blocker counter to ensure unnecessary context switching can be avoided. Change-Id: Ie13177dfee2af66687ae7cf5c67405c152853990 Fixes: bz#1631128 Signed-off-by: Mohit Agrawal --- xlators/mgmt/glusterd/src/glusterd.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'xlators/mgmt/glusterd/src/glusterd.h') diff --git a/xlators/mgmt/glusterd/src/glusterd.h b/xlators/mgmt/glusterd/src/glusterd.h index 412ba7415f0..3b681ef9544 100644 --- a/xlators/mgmt/glusterd/src/glusterd.h +++ b/xlators/mgmt/glusterd/src/glusterd.h @@ -212,7 +212,7 @@ typedef struct { int ping_timeout; uint32_t generation; int32_t workers; - uint32_t blockers; + gf_atomic_t blockers; uint32_t mgmt_v3_lock_timeout; gf_boolean_t restart_bricks; } glusterd_conf_t; -- cgit