diff options
| author | Anand Avati <avati@redhat.com> | 2012-08-20 10:19:15 -0700 | 
|---|---|---|
| committer | Anand Avati <avati@redhat.com> | 2012-09-19 23:18:08 -0700 | 
| commit | 38afd84faa383c5e0be21c48c918112b7b01a5cf (patch) | |
| tree | d43a43445165ac2005fe4424f7b8fb2bd15d979a /rpc/rpc-lib/src/rpcsvc.h | |
| parent | a3c5722b39895f5fa4721cfae456e26bc758b33a (diff) | |
rpcsvc: framework for executing actors as synctask
An rpcsvc_program can be registered by setting .synctask field
to 1 which will make actors of that program be executed in a
synctask, thus freeing up the rpc/poll thread while the actor
executes.
Change-Id: Idacef2ad3bcae0f354fd0fc16ca06ba7094d7b98
BUG: 762935
Signed-off-by: Anand Avati <avati@redhat.com>
Reviewed-on: http://review.gluster.org/3833
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Diffstat (limited to 'rpc/rpc-lib/src/rpcsvc.h')
| -rw-r--r-- | rpc/rpc-lib/src/rpcsvc.h | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/rpc/rpc-lib/src/rpcsvc.h b/rpc/rpc-lib/src/rpcsvc.h index 9f526cb05cd..5a0ddc9da9d 100644 --- a/rpc/rpc-lib/src/rpcsvc.h +++ b/rpc/rpc-lib/src/rpcsvc.h @@ -224,6 +224,9 @@ struct rpcsvc_request {           */          rpcsvc_auth_data_t      verf; +	/* Execute this request's actor function as a synctask? */ +	gf_boolean_t            synctask; +          /* Container for a RPC program wanting to store a temp           * request-specific item.           */ @@ -367,6 +370,9 @@ struct rpcsvc_program {           */          int                     min_auth; +	/* Execute actor function as a synctask? */ +	gf_boolean_t            synctask; +          /* list member to link to list of registered services with rpcsvc */          struct list_head        program;  };  | 
