summaryrefslogtreecommitdiffstats
path: root/xlators/features/upcall/src/upcall.h
diff options
context:
space:
mode:
authorPoornima G <pgurusid@redhat.com>2015-12-16 05:45:03 -0500
committerPranith Kumar Karampuri <pkarampu@redhat.com>2016-05-19 02:28:07 -0700
commit8facd588f20ef8305b6f6b53da0f6d54d300093b (patch)
tree066a5c1d7f7bf4c56685be859ca5c256e4d8c1e8 /xlators/features/upcall/src/upcall.h
parent005d18a623dc49397e2a83a7fb80607ae0a9aed9 (diff)
upcall: pass dict with xattrs on xattr invalidation
In case of xattr invalidation, return a dict containing the updated xattrs. [ndevos: move chunks to change 12995 and only address the xattrs-dict here] Change-Id: I8733f06a519a9a0f24be1bb4b2c38c9c9dce0ce2 BUG: 1211863 Signed-off-by: Poornima G <pgurusid@redhat.com> Reviewed-on: http://review.gluster.org/12996 Smoke: Gluster Build System <jenkins@build.gluster.com> CentOS-regression: Gluster Build System <jenkins@build.gluster.com> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> Reviewed-by: Niels de Vos <ndevos@redhat.com> Reviewed-by: soumya k <skoduri@redhat.com> Tested-by: soumya k <skoduri@redhat.com>
Diffstat (limited to 'xlators/features/upcall/src/upcall.h')
-rw-r--r--xlators/features/upcall/src/upcall.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/xlators/features/upcall/src/upcall.h b/xlators/features/upcall/src/upcall.h
index c96cc191ecc..5ad502f4a89 100644
--- a/xlators/features/upcall/src/upcall.h
+++ b/xlators/features/upcall/src/upcall.h
@@ -84,11 +84,13 @@ struct upcall_local {
upcall_inode_ctx_t *upcall_inode_ctx;
inode_t *inode;
loc_t rename_oldloc;
+ dict_t *xattr;
};
typedef struct upcall_local upcall_local_t;
void upcall_local_wipe (xlator_t *this, upcall_local_t *local);
-upcall_local_t *upcall_local_init (call_frame_t *frame, xlator_t *this, inode_t *inode);
+upcall_local_t *upcall_local_init (call_frame_t *frame, xlator_t *this,
+ inode_t *inode, dict_t *xattr);
upcall_client_t *add_upcall_client (call_frame_t *frame, client_t *client,
upcall_inode_ctx_t *up_inode_ctx);
@@ -118,11 +120,13 @@ void upcall_cache_invalidate (call_frame_t *frame, xlator_t *this,
client_t *client, inode_t *inode,
uint32_t flags, struct iatt *stbuf,
struct iatt *p_stbuf,
- struct iatt *oldp_stbuf);
+ struct iatt *oldp_stbuf, dict_t *xattr);
void upcall_client_cache_invalidate (xlator_t *xl, uuid_t gfid,
upcall_client_t *up_client_entry,
uint32_t flags, struct iatt *stbuf,
struct iatt *p_stbuf,
- struct iatt *oldp_stbuf);
+ struct iatt *oldp_stbuf, dict_t *xattr);
+
+int up_filter_virtual_xattr (dict_t *d, char *k, data_t *v, void *tmp);
#endif /* __UPCALL_H__ */