[PVFS2-CVS] commit by pcarns in pvfs2/src/server/request-scheduler:
request-scheduler.c
CVS commit program
cvs at parl.clemson.edu
Fri Jul 30 10:11:43 EDT 2004
Update of /projects/cvsroot/pvfs2/src/server/request-scheduler
In directory parlweb:/tmp/cvs-serv18582/src/server/request-scheduler
Modified Files:
request-scheduler.c
Log Message:
add functionality in request scheduler to allow operations to pass through
immediately without any scheduling, make "noop" work this way
Index: request-scheduler.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/server/request-scheduler/request-scheduler.c,v
diff -p -u -r1.47 -r1.48
--- request-scheduler.c 28 Jul 2004 14:32:57 -0000 1.47
+++ request-scheduler.c 30 Jul 2004 13:11:43 -0000 1.48
@@ -186,6 +186,8 @@ int PINT_req_sched_finalize(
* returns 0 on success, -errno on failure
* NOTE: a handle value of 0 and a return value of 0 indicates
* that the request does not operate on any particular handle
+ * NOTE: a return value of 1 indicates that we can let this operation pass
+ * through without any scheduling
*
* TODO: we need to fix this function and all of its callers if we
* define something besides "0" to represent an invalid handle value
@@ -269,7 +271,7 @@ int PINT_req_sched_target_handle(
*fs_id = req->u.flush.fs_id;
return (0);
case PVFS_SERV_MGMT_NOOP:
- return (0);
+ return (1);
case PVFS_SERV_MGMT_PERF_MON:
return (0);
case PVFS_SERV_MGMT_EVENT_MON:
@@ -333,6 +335,11 @@ int PINT_req_sched_post(
{
return (ret);
}
+ if(ret == 1)
+ {
+ *out_id = 0;
+ return(1);
+ }
/* NOTE: handle == 0 is a special case, the request isn't
* operating on a particular handle, but we will queue anyway
@@ -722,6 +729,14 @@ int PINT_req_sched_release(
* need to fill in the out_id
*/
*out_id = 0;
+
+ if(in_completed_id == 0)
+ {
+ /* the scheduler let this operation pass through; no infrastructure
+ * to clean up
+ */
+ return(1);
+ }
/* retrieve the element directly from the id */
tmp_element = id_gen_fast_lookup(in_completed_id);
More information about the PVFS2-CVS
mailing list