summaryrefslogtreecommitdiffstats
path: root/libglusterfs
diff options
context:
space:
mode:
authorSoumya Koduri <skoduri@redhat.com>2015-03-30 16:56:59 +0530
committerVijay Bellur <vbellur@redhat.com>2015-05-07 04:19:16 -0700
commitea8d9ebafa4a6afb99721022e638292fd475ed62 (patch)
tree3419bbcd116abd6b8361a3b0a997081cddc82139 /libglusterfs
parent14011cb0383ac19b98b02f0caec5a1977ecd7c35 (diff)
Upcall: Process each of the upcall events separately
As suggested during the code-review of Bug1200262, have modified GF_CBK_UPCALL to be exlusively GF_CBK_CACHE_INVALIDATION. Thus, for any new upcall event, a new CBK procedure will be added. Also made changes to store upcall data separately based on the upcall event type received. BUG: 1217711 Change-Id: I0f5e53d6f5ece16aecb514a0a426dca40fa1c755 Signed-off-by: Soumya Koduri <skoduri@redhat.com> Reviewed-on: http://review.gluster.org/10049 Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com> Reviewed-on: http://review.gluster.org/10562 Tested-by: NetBSD Build System Tested-by: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'libglusterfs')
-rw-r--r--libglusterfs/src/glusterfs.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/libglusterfs/src/glusterfs.h b/libglusterfs/src/glusterfs.h
index f6c10e99ef9..78398310a39 100644
--- a/libglusterfs/src/glusterfs.h
+++ b/libglusterfs/src/glusterfs.h
@@ -37,6 +37,7 @@
#include "list.h"
#include "logging.h"
#include "lkowner.h"
+#include "compat-uuid.h"
#define GF_YES 1
#define GF_NO 0
@@ -369,6 +370,11 @@ typedef enum {
} gf_xattrop_flags_t;
+typedef enum {
+ GF_UPCALL_EVENT_NULL,
+ GF_UPCALL_CACHE_INVALIDATION,
+} gf_upcall_event_t;
+
#define GF_SET_IF_NOT_PRESENT 0x1 /* default behaviour */
#define GF_SET_OVERWRITE 0x2 /* Overwrite with the buf given */
#define GF_SET_DIR_ONLY 0x4
@@ -608,9 +614,13 @@ struct gf_flock {
};
struct gf_upcall {
- char *client_uid;
- char gfid[16];
- u_int event_type;
+ char *client_uid;
+ uuid_t gfid;
+ u_int event_type;
+ void *data;
+};
+
+struct gf_upcall_cache_invalidation {
u_int flags;
u_int expire_time_attr;
};