From eb9003cdca755980da9ed5a3a3fb0fc52c750131 Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Mon, 23 Apr 2012 10:49:02 +0530 Subject: libglusterfs: Never block syncproc Change-Id: I64cd8a2ef37926173c19a33df0716183530e22bf BUG: 814074 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.com/3194 Tested-by: Gluster Build System Reviewed-by: Jeff Darcy Reviewed-by: Anand Avati --- xlators/mgmt/glusterd/src/glusterd-syncop.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'xlators/mgmt/glusterd/src/glusterd-syncop.h') diff --git a/xlators/mgmt/glusterd/src/glusterd-syncop.h b/xlators/mgmt/glusterd/src/glusterd-syncop.h index 44f983c2979..a3cc0ab47e0 100644 --- a/xlators/mgmt/glusterd/src/glusterd-syncop.h +++ b/xlators/mgmt/glusterd/src/glusterd-syncop.h @@ -28,11 +28,15 @@ /* gd_syncop_* */ #define GD_SYNCOP(rpc, stb, cbk, req, prog, procnum, xdrproc) do { \ int ret = 0; \ + struct synctask *task = NULL; \ + task = synctask_get (); \ + stb->task = task; \ + \ ret = gd_syncop_submit_request (rpc, req, stb, \ prog, procnum, cbk, \ (xdrproc_t)xdrproc); \ if (!ret) \ - __yield (stb); \ + synctask_yield (stb->task); \ } while (0) -- cgit