summaryrefslogtreecommitdiffstats
path: root/tests/basic/gfapi/upcall-cache-invalidate.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basic/gfapi/upcall-cache-invalidate.c')
-rw-r--r--tests/basic/gfapi/upcall-cache-invalidate.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/tests/basic/gfapi/upcall-cache-invalidate.c b/tests/basic/gfapi/upcall-cache-invalidate.c
index 64811f3274a..cc2e6a0fe33 100644
--- a/tests/basic/gfapi/upcall-cache-invalidate.c
+++ b/tests/basic/gfapi/upcall-cache-invalidate.c
@@ -41,8 +41,9 @@ main (int argc, char *argv[])
struct callback_arg cbk;
char *logfile = NULL;
char *volname = NULL;
+ struct callback_inode_arg *in_arg = NULL;
- cbk.object = NULL;
+ cbk.reason = 0;
if (argc != 3) {
fprintf (stderr, "Invalid argument\n");
@@ -147,10 +148,18 @@ main (int argc, char *argv[])
if (cnt > 2) {
ret = glfs_h_poll_upcall(fs_tmp, &cbk);
LOG_ERR ("glfs_h_poll_upcall", ret);
- if (cbk.object) {
+ /* Expect 'GFAPI_INODE_INVALIDATE' upcall event. */
+ if (cbk.reason == GFAPI_INODE_INVALIDATE) {
+ in_arg = cbk.event_arg;
fprintf (stderr, " upcall event type - %d,"
- " flags - %d, expire_time_attr - %d\n" ,
- cbk.reason, cbk.flags, cbk.expire_time_attr);
+ " object(%p), flags(%d), "
+ " expire_time_attr(%d)\n" ,
+ cbk.reason, in_arg->object,
+ in_arg->flags,
+ in_arg->expire_time_attr);
+ ret = glfs_h_close (in_arg->object);
+ LOG_ERR ("glfs_h_close", ret);
+ free (in_arg);
} else {
fprintf (stderr,
"Dint receive upcall notify event");