From 84d370774cdbc6847f4f2f64a7f47abb27a7471b Mon Sep 17 00:00:00 2001 From: Kaushal M Date: Mon, 16 Jun 2014 18:56:18 +0530 Subject: glusterd: Use blocking quotad start only on quota enable Having quotad always being using the blocking runner variant is problematic. In some cases where quotad was started from the epoll thread, it lead to a deadlock which lead to glusterd becoming unresponsive. This patch makes the default quotad_start function use the non-blocking runner_nowait variant. The blocking start is used only when quotad is started on quota enable command. Change-Id: Ib27042748d69ea28e68badcfaddf61589aae4eba BUG: 1109872 Signed-off-by: Kaushal M Reviewed-on: http://review.gluster.org/8082 Tested-by: Gluster Build System Reviewed-by: Krishnan Parthasarathi Tested-by: Krishnan Parthasarathi --- xlators/mgmt/glusterd/src/glusterd-quota.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'xlators/mgmt/glusterd/src/glusterd-quota.c') diff --git a/xlators/mgmt/glusterd/src/glusterd-quota.c b/xlators/mgmt/glusterd/src/glusterd-quota.c index 3ed0196c15a..3e29a9601bc 100644 --- a/xlators/mgmt/glusterd/src/glusterd-quota.c +++ b/xlators/mgmt/glusterd/src/glusterd-quota.c @@ -989,7 +989,8 @@ glusterd_quotad_op (int opcode) if (glusterd_all_volumes_with_quota_stopped ()) ret = glusterd_quotad_stop (); else - ret = glusterd_check_generate_start_quotad (); + ret = glusterd_check_generate_start_quotad_wait + (); break; default: -- cgit