diff options
author | Pranith Kumar K <pranithk@gluster.com> | 2012-04-23 10:49:02 +0530 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2012-04-23 13:11:49 -0700 |
commit | eb9003cdca755980da9ed5a3a3fb0fc52c750131 (patch) | |
tree | 7ed1f88457bfa0ed2cfdf2cb1ede2a50cc966b59 /xlators | |
parent | fc024df2b6f9307f23a4a0800103555708036b17 (diff) |
libglusterfs: Never block syncproc
Change-Id: I64cd8a2ef37926173c19a33df0716183530e22bf
BUG: 814074
Signed-off-by: Pranith Kumar K <pranithk@gluster.com>
Reviewed-on: http://review.gluster.com/3194
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-syncop.h | 6 |
1 files changed, 5 insertions, 1 deletions
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) |