From efad78260379f0ca836e8a2327b97dd620acd098 Mon Sep 17 00:00:00 2001 From: Susant Palai Date: Tue, 22 Aug 2017 13:44:52 +0530 Subject: rio/everywhere: add icreate/namelink fop icreate creates inode, while namelink links the basename to it's parent gfid. For now mkdir is the primary user of these fops. Better distribution is acheived by creating the inode on ,(say) mds1 and linking the basename to it's parent gfid on mds2. The inode serves readdirp, stat etc. More details about the fops are present at: https://review.gluster.org/#/c/13395/3/design/DHT2/DHT2_Icreate_Namelink_Notes.md This backport of three patches from experimental branch. 1- https://review.gluster.org/#/c/18085/ 2- https://review.gluster.org/#/c/18086/ 3- https://review.gluster.org/#/c/18094/ Updates gluster/glusterfs#243 Change-Id: I1bd3d5a441a3cfab1acfeb52f15c6c867d362592 Signed-off-by: Susant Palai --- libglusterfs/src/syncop.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'libglusterfs/src/syncop.h') diff --git a/libglusterfs/src/syncop.h b/libglusterfs/src/syncop.h index 8f84cb7c4a4..3b2556535b7 100644 --- a/libglusterfs/src/syncop.h +++ b/libglusterfs/src/syncop.h @@ -569,4 +569,14 @@ syncop_put (xlator_t *subvol, loc_t *loc, mode_t mode, mode_t umask, off_t offset, struct iobref *iobref, dict_t *xattr, struct iatt *iatt, dict_t *xdata_in, dict_t **xdata_out); +int +syncop_setactivelk_cbk (call_frame_t *frame, void *cookie, xlator_t *this, + int32_t op_ret, int32_t op_errno, dict_t *xdata); + +int +syncop_icreate (xlator_t *subvol, loc_t *loc, mode_t mode, dict_t *xdata_out); + +int +syncop_namelink (xlator_t *subvol, loc_t *loc, dict_t *xdata_out); + #endif /* _SYNCOP_H */ -- cgit