diff options
Diffstat (limited to 'rpc')
| -rw-r--r-- | rpc/rpc-lib/src/protocol-common.h | 1 | ||||
| -rw-r--r-- | rpc/xdr/src/cli1-xdr.c | 12 | ||||
| -rw-r--r-- | rpc/xdr/src/cli1-xdr.h | 19 | ||||
| -rw-r--r-- | rpc/xdr/src/cli1-xdr.x | 12 | 
4 files changed, 44 insertions, 0 deletions
diff --git a/rpc/rpc-lib/src/protocol-common.h b/rpc/rpc-lib/src/protocol-common.h index 30434d0d9e4..8483fbcf459 100644 --- a/rpc/rpc-lib/src/protocol-common.h +++ b/rpc/rpc-lib/src/protocol-common.h @@ -197,6 +197,7 @@ enum gluster_cli_procnum {          GLUSTER_CLI_GSYNC_SET,          GLUSTER_CLI_PROFILE_VOLUME,          GLUSTER_CLI_QUOTA, +        GLUSTER_CLI_TOP_VOLUME,          GLUSTER_CLI_MAXVALUE,  }; diff --git a/rpc/xdr/src/cli1-xdr.c b/rpc/xdr/src/cli1-xdr.c index c51546a8edd..fa24ad90bbb 100644 --- a/rpc/xdr/src/cli1-xdr.c +++ b/rpc/xdr/src/cli1-xdr.c @@ -108,6 +108,15 @@ xdr_gf1_cli_stats_op (XDR *xdrs, gf1_cli_stats_op *objp)  }  bool_t +xdr_gf1_cli_top_op (XDR *xdrs, gf1_cli_top_op *objp) +{ + +         if (!xdr_enum (xdrs, (enum_t *) objp)) +                 return FALSE; +        return TRUE; +} + +bool_t  xdr_gf1_cli_probe_req (XDR *xdrs, gf1_cli_probe_req *objp)  { @@ -764,6 +773,9 @@ xdr_gf1_cli_stats_volume_req (XDR *xdrs, gf1_cli_stats_volume_req *objp)  		 return FALSE;  	 if (!xdr_gf1_cli_stats_op (xdrs, &objp->op))  		 return FALSE; +	 if (!xdr_bytes (xdrs, (char **)&objp->dict_req.dict_req_val, (u_int *) &objp->dict_req.dict_req_len, ~0)) +		 return FALSE; +  	return TRUE;  } diff --git a/rpc/xdr/src/cli1-xdr.h b/rpc/xdr/src/cli1-xdr.h index 865eb793a1f..dba58349296 100644 --- a/rpc/xdr/src/cli1-xdr.h +++ b/rpc/xdr/src/cli1-xdr.h @@ -100,9 +100,22 @@ enum gf1_cli_stats_op {  	GF_CLI_STATS_START = 1,  	GF_CLI_STATS_STOP = 2,  	GF_CLI_STATS_INFO = 3, +        GF_CLI_STATS_TOP = 4,  };  typedef enum gf1_cli_stats_op gf1_cli_stats_op; +enum gf1_cli_top_op { +        GF_CLI_TOP_NONE = 0, +        GF_CLI_TOP_OPEN = 0 + 1, +        GF_CLI_TOP_READ = 0 + 2, +        GF_CLI_TOP_WRITE = 0 + 3, +        GF_CLI_TOP_OPENDIR = 0 + 4, +        GF_CLI_TOP_READDIR = 0 + 5, +        GF_CLI_TOP_READ_PERF = 0 + 6, +        GF_CLI_TOP_WRITE_PERF = 0 + 7, +}; +typedef enum gf1_cli_top_op gf1_cli_top_op; +  struct gf1_cli_probe_req {  	char *hostname;  	int port; @@ -475,6 +488,10 @@ typedef struct gf1_cli_gsync_set_rsp gf1_cli_gsync_set_rsp;  struct gf1_cli_stats_volume_req {  	char *volname;  	gf1_cli_stats_op op; +	struct { +		u_int dict_req_len; +		char* dict_req_val; +	} dict_req;  };  typedef struct gf1_cli_stats_volume_req gf1_cli_stats_volume_req; @@ -499,6 +516,7 @@ extern  bool_t xdr_gf1_cli_get_volume (XDR *, gf1_cli_get_volume*);  extern  bool_t xdr_gf1_cli_sync_volume (XDR *, gf1_cli_sync_volume*);  extern  bool_t xdr_gf1_cli_op_flags (XDR *, gf1_cli_op_flags*);  extern  bool_t xdr_gf1_cli_gsync_set (XDR *, gf1_cli_gsync_set*); +extern  bool_t xdr_gf1_cli_top_op (XDR *, gf1_cli_top_op*);  extern  bool_t xdr_gf1_cli_stats_op (XDR *, gf1_cli_stats_op*);  extern  bool_t xdr_gf_quota_type (XDR *, gf_quota_type*);  extern  bool_t xdr_gf1_cli_probe_req (XDR *, gf1_cli_probe_req*); @@ -558,6 +576,7 @@ extern bool_t xdr_gf1_cli_sync_volume ();  extern bool_t xdr_gf1_cli_op_flags ();  extern bool_t xdr_gf1_cli_gsync_set ();  extern bool_t xdr_gf1_cli_stats_op (); +extern bool_t xdr_gf1_cli_top_op ();  extern bool_t xdr_gf_quota_type ();  extern bool_t xdr_gf1_cli_probe_req ();  extern bool_t xdr_gf1_cli_probe_rsp (); diff --git a/rpc/xdr/src/cli1-xdr.x b/rpc/xdr/src/cli1-xdr.x index f352b6f3698..035927f89e4 100644 --- a/rpc/xdr/src/cli1-xdr.x +++ b/rpc/xdr/src/cli1-xdr.x @@ -58,6 +58,18 @@ enum gf1_cli_stats_op {          GF_CLI_STATS_START = 1,          GF_CLI_STATS_STOP  = 2,          GF_CLI_STATS_INFO  = 3 +        GF_CLI_STATS_TOP = 4 +}; + +enum gf1_cli_top_op { +        GF_CLI_TOP_NONE = 0, +        GF_CLI_TOP_OPEN, +        GF_CLI_TOP_READ, +        GF_CLI_TOP_WRITE, +        GF_CLI_TOP_OPENDIR, +        GF_CLI_TOP_READDIR, +        GF_CLI_TOP_READ_PERF, +        GF_CLI_TOP_WRITE_PERF  };   struct gf1_cli_probe_req {  | 
