diff options
author | Anuradha Talur <atalur@redhat.com> | 2016-04-21 17:20:09 +0530 |
---|---|---|
committer | Pranith Kumar Karampuri <pkarampu@redhat.com> | 2016-04-25 23:47:28 -0700 |
commit | 9996f95b28b3782887b7c233cdc0ba686c38b245 (patch) | |
tree | 5fa681f25b95dd9aeec88f3bf86adbc98bd2c1d3 /libglusterfs/src/xlator.h | |
parent | 2dc22adbf3361bdab10924943371492cc2817d8a (diff) |
performance/decompounder: Introducing decompounder xlator
This xlator decompounds the compound fops received,
and executes them serially.
Change-Id: Ieddcec3c2983dd9ca7919ba9d7ecaa5192a5f489
BUG: 1303829
Signed-off-by: Anuradha Talur <atalur@redhat.com>
Reviewed-on: http://review.gluster.org/13577
Smoke: Gluster Build System <jenkins@build.gluster.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
Diffstat (limited to 'libglusterfs/src/xlator.h')
-rw-r--r-- | libglusterfs/src/xlator.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libglusterfs/src/xlator.h b/libglusterfs/src/xlator.h index 84f48edba2c..052dd978a63 100644 --- a/libglusterfs/src/xlator.h +++ b/libglusterfs/src/xlator.h @@ -452,6 +452,10 @@ typedef int32_t (*fop_lease_cbk_t) (call_frame_t *frame, void *cookie, xlator_t *this, int32_t op_ret, int32_t op_errno, struct gf_lease *lease, dict_t *xdata); +typedef int32_t (*fop_compound_cbk_t) (call_frame_t *frame, + void *cookie, xlator_t *this, + int32_t op_ret, int32_t op_errno, + void *data, dict_t *xdata); typedef int32_t (*fop_lookup_t) (call_frame_t *frame, xlator_t *this, @@ -702,6 +706,8 @@ typedef int32_t (*fop_seek_t) (call_frame_t *frame, xlator_t *this, fd_t *fd, typedef int32_t (*fop_lease_t) (call_frame_t *frame, xlator_t *this, loc_t *loc, struct gf_lease *lease, dict_t *xdata); +typedef int32_t (*fop_compound_t) (call_frame_t *frame, xlator_t *this, + void *args, dict_t *xdata); struct xlator_fops { fop_lookup_t lookup; fop_stat_t stat; @@ -751,6 +757,7 @@ struct xlator_fops { fop_ipc_t ipc; fop_seek_t seek; fop_lease_t lease; + fop_compound_t compound; /* these entries are used for a typechecking hack in STACK_WIND _only_ */ fop_lookup_cbk_t lookup_cbk; @@ -801,6 +808,7 @@ struct xlator_fops { fop_ipc_cbk_t ipc_cbk; fop_seek_cbk_t seek_cbk; fop_lease_cbk_t lease_cbk; + fop_compound_cbk_t compound_cbk; }; typedef int32_t (*cbk_forget_t) (xlator_t *this, |