[PVFS2-CVS] commit by slang in pvfs2/src/io/trove/trove-dbpf: dbpf-bstream.c dbpf-dspace.c dbpf-thread.c dbpf.h

CVS commit program cvs at parl.clemson.edu
Fri Nov 4 02:14:22 EST 2005


Update of /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf
In directory parlweb:/tmp/cvs-serv6522/src/io/trove/trove-dbpf

Modified Files:
      Tag: slang-sio-branch
	dbpf-bstream.c dbpf-dspace.c dbpf-thread.c dbpf.h 
Log Message:
small I/O changes in sio branch for now


Index: dbpf-bstream.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf-bstream.c,v
diff -p -u -r1.56 -r1.56.2.1
--- dbpf-bstream.c	29 Sep 2005 19:23:14 -0000	1.56
+++ dbpf-bstream.c	4 Nov 2005 07:14:20 -0000	1.56.2.1
@@ -123,6 +123,8 @@ static void aio_progress_notification(si
                           (op_p->type == BSTREAM_WRITE_AT) ?
                           "WRITE" : "READ"), ret, op_p->u.b_rw_list.fd);
 
+            *(op_p->u.b_rw_list.out_size_p) = ret;
+
             /* mark as a NOP so we ignore it from now on */
             aiocb_p[i].aio_lio_opcode = LIO_NOP;
         }
@@ -875,6 +877,7 @@ static inline int dbpf_bstream_rw_list(T
     q_op_p->op.u.b_rw_list.stream_array_count = stream_count;
     q_op_p->op.u.b_rw_list.stream_offset_array = stream_offset_array;
     q_op_p->op.u.b_rw_list.stream_size_array = stream_size_array;
+    q_op_p->op.u.b_rw_list.out_size_p = out_size_p;
     q_op_p->op.u.b_rw_list.aiocb_array_count = 0;
     q_op_p->op.u.b_rw_list.aiocb_array = NULL;
 #ifndef __PVFS2_TROVE_AIO_THREADED__
@@ -1112,6 +1115,11 @@ static int dbpf_bstream_rw_list_op_svc(s
                               (op_p->type == BSTREAM_WRITE_AT) ?
                               "WRITE" : "READ"), ret,
                              op_p->u.b_rw_list.fd);
+
+                /* we need to set the out size for the caller of write_list or
+                 * read_list
+                 */
+                *(op_p->u.b_rw_list.out_size_p) = ret;
 
                 /* mark as a NOP so we ignore it from now on */
                 aiocb_p[i].aio_lio_opcode = LIO_NOP;

Index: dbpf-dspace.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf-dspace.c,v
diff -p -u -r1.124 -r1.124.2.1
--- dbpf-dspace.c	25 Oct 2005 18:01:00 -0000	1.124
+++ dbpf-dspace.c	4 Nov 2005 07:14:21 -0000	1.124.2.1
@@ -391,14 +391,14 @@ return_error:
 }
 
 static int dbpf_dspace_iterate_handles(TROVE_coll_id coll_id,
-                                TROVE_ds_position *position_p,
-                                TROVE_handle *handle_array,
-                                int *inout_count_p,
-                                TROVE_ds_flags flags,
-                                TROVE_vtag_s *vtag,
-                                void *user_ptr,
-                                TROVE_context_id context_id,
-                                TROVE_op_id *out_op_id_p)
+                                       TROVE_ds_position *position_p,
+                                       TROVE_handle *handle_array,
+                                       int *inout_count_p,
+                                       TROVE_ds_flags flags,
+                                       TROVE_vtag_s *vtag,
+                                       void *user_ptr,
+                                       TROVE_context_id context_id,
+                                       TROVE_op_id *out_op_id_p)
 {
     dbpf_queued_op_t *q_op_p = NULL;
     struct dbpf_collection *coll_p = NULL;

Index: dbpf-thread.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf-thread.c,v
diff -p -u -r1.30 -r1.30.18.1
--- dbpf-thread.c	1 Oct 2004 19:11:50 -0000	1.30
+++ dbpf-thread.c	4 Nov 2005 07:14:21 -0000	1.30.18.1
@@ -30,6 +30,8 @@ pthread_cond_t dbpf_op_incoming_cond = P
 pthread_cond_t dbpf_op_completed_cond = PTHREAD_COND_INITIALIZER;
 #endif
 
+extern int dbpf_thread_initialize(void);
+
 int dbpf_thread_initialize(void)
 {
     int ret = 0;

Index: dbpf.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/trove/trove-dbpf/dbpf.h,v
diff -p -u -r1.56 -r1.56.2.1
--- dbpf.h	27 Oct 2005 18:43:08 -0000	1.56
+++ dbpf.h	4 Nov 2005 07:14:21 -0000	1.56.2.1
@@ -304,6 +304,7 @@ struct dbpf_bstream_rw_list_op
     TROVE_size *mem_size_array;
     TROVE_offset *stream_offset_array;
     TROVE_size *stream_size_array;
+    TROVE_size *out_size_p;
     struct aiocb *aiocb_array;
     struct sigevent sigev;
     struct bstream_listio_state lio_state;



More information about the PVFS2-CVS mailing list