From 9184db72394dd9afc3f9e0327a718c80ead717df Mon Sep 17 00:00:00 2001 From: Brian Barrett Date: Sat, 21 Jul 2007 22:08:27 +0000 Subject: [PATCH] Update ROMIO release to the one included with MPICH2-1.0.5p4, tagged in vendor/romio as mpich2-1.0.5p4. This commit was SVN r15544. --- NEWS | 2 + .../romio/romio/adio/ad_ntfs/ad_ntfs_read.c | 6 + .../romio/romio/adio/ad_ntfs/ad_ntfs_write.c | 6 + .../romio/romio/adio/ad_pvfs/ad_pvfs_read.c | 2 - .../romio/romio/adio/ad_pvfs/ad_pvfs_write.c | 2 - .../romio/adio/ad_pvfs2/ad_pvfs2_common.c | 8 ++ .../romio/romio/adio/ad_pvfs2/ad_pvfs2_open.c | 15 ++- .../romio/romio/adio/ad_pvfs2/ad_pvfs2_read.c | 4 +- .../romio/adio/ad_pvfs2/ad_pvfs2_write.c | 4 +- .../romio/adio/ad_testfs/ad_testfs_done.c | 11 +- .../romio/romio/adio/common/ad_write_coll.c | 13 +- ompi/mca/io/romio/romio/adio/common/strfns.c | 6 +- ompi/mca/io/romio/romio/configure.in | 27 ++++ .../io/romio/romio/mpi-io/fortran/Makefile.in | 116 +++++++++++++++++- .../romio/mpi-io/glue/default/Makefile.in | 4 +- .../romio/mpi-io/glue/mpich1/Makefile.in | 4 +- .../romio/mpi-io/glue/mpich2/Makefile.in | 4 +- ompi/mca/io/romio/romio/mpi-io/ioreq_f2c.c | 7 +- .../romio/romio/mpi2-other/array/Makefile.in | 13 +- .../mpi2-other/array/fortran/Makefile.in | 12 +- .../romio/romio/mpi2-other/info/Makefile.in | 31 ++++- .../romio/mpi2-other/info/fortran/Makefile.in | 26 +++- ompi/mca/io/romio/romio/test/fcoll_test.f.in | 5 + ompi/mca/io/romio/romio/test/fmisc.f.in | 5 + ompi/mca/io/romio/romio/test/fperf.f.in | 5 + ompi/mca/io/romio/romio/test/large_file.c.in | 5 + ompi/mca/io/romio/romio/test/misc.c.in | 5 + .../mca/io/romio/romio/test/noncontig_coll2.c | 28 ++++- ompi/mca/io/romio/romio/test/pfcoll_test.f.in | 5 + ompi/mca/io/romio/romio/test/runtests.in | 99 ++++++++------- 30 files changed, 391 insertions(+), 89 deletions(-) diff --git a/NEWS b/NEWS index 7492d7a694..968b5d32b9 100644 --- a/NEWS +++ b/NEWS @@ -33,6 +33,8 @@ Trunk (not on release branches yet) details. --> Expected: ??? +- Updated ROMIO with the version from MPICH2 1.0.5p4 + --> Expected: 1.3 - Add RDMA capable one-sided component (called rdma), which can be used with BTL components that expose a full one-sided interface. diff --git a/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_read.c b/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_read.c index ef812ca7ee..2923105525 100644 --- a/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_read.c +++ b/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_read.c @@ -17,6 +17,12 @@ void ADIOI_NTFS_ReadContig(ADIO_File fd, void *buf, int count, static char myname[] = "ADIOI_NTFS_ReadContig"; OVERLAPPED *pOvl; + /* If file pointer is of type ADIO_INDIVIDUAL ignore the offset + and use the current location of file pointer */ + if(file_ptr_type == ADIO_INDIVIDUAL){ + offset = fd->fp_ind; + } + MPI_Type_size(datatype, &datatype_size); len = datatype_size * count; diff --git a/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_write.c b/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_write.c index 27c17d5ca5..aad0edc37c 100644 --- a/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_write.c +++ b/ompi/mca/io/romio/romio/adio/ad_ntfs/ad_ntfs_write.c @@ -16,6 +16,12 @@ void ADIOI_NTFS_WriteContig(ADIO_File fd, void *buf, int count, DWORD dwNumWritten = 0; int err=-1, datatype_size, len; OVERLAPPED *pOvl; + + /* If file pointer type in ADIO_INDIVIDUAL then offset should be + ignored and the current location of file pointer should be used */ + if(file_ptr_type == ADIO_INDIVIDUAL){ + offset = fd->fp_ind; + } MPI_Type_size(datatype, &datatype_size); len = datatype_size * count; diff --git a/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_read.c b/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_read.c index 9ad04db679..b0e1522e9d 100644 --- a/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_read.c +++ b/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_read.c @@ -541,8 +541,6 @@ void ADIOI_PVFS_ReadStridedListIO(ADIO_File fd, void *buf, int count, max_mem_list = mem_list_count; if (max_file_list < file_list_count) max_file_list = file_list_count; - if (max_mem_list == MAX_ARRAY_SIZE) - break; } /* while (size_read < bufsize) */ mem_offsets = (char **)ADIOI_Malloc(max_mem_list*sizeof(char *)); diff --git a/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_write.c b/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_write.c index 362a01b360..3b4cf63fd5 100644 --- a/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_write.c +++ b/ompi/mca/io/romio/romio/adio/ad_pvfs/ad_pvfs_write.c @@ -881,8 +881,6 @@ void ADIOI_PVFS_WriteStridedListIO(ADIO_File fd, void *buf, int count, max_mem_list = mem_list_count; if (max_file_list < file_list_count) max_file_list = file_list_count; - if (max_mem_list == MAX_ARRAY_SIZE) - break; } /* while (size_wrote < bufsize) */ mem_offsets = (char **)ADIOI_Malloc(max_mem_list*sizeof(char *)); diff --git a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_common.c b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_common.c index d99b2e539b..3b782e2655 100644 --- a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_common.c +++ b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_common.c @@ -48,6 +48,7 @@ void ADIOI_PVFS2_Init(int *error_code ) { int ret; static char myname[] = "ADIOI_PVFS2_INIT"; + char * ncache_timeout; /* do nothing if we've already fired up the pvfs2 interface */ if (ADIOI_PVFS2_Initialized != MPI_KEYVAL_INVALID) { @@ -55,6 +56,13 @@ void ADIOI_PVFS2_Init(int *error_code ) return; } + /* for consistency, we should disable the pvfs2 ncache. If the + * environtment variable is already set, assume a user knows it + * won't be a problem */ + ncache_timeout = getenv("PVFS2_NCACHE_TIMEOUT"); + if (ncache_timeout == NULL ) + setenv("PVFS2_NCACHE_TIMEOUT", "0", 1); + ret = PVFS_util_init_defaults(); if (ret < 0 ) { *error_code = MPIO_Err_create_code(MPI_SUCCESS, diff --git a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_open.c b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_open.c index b2c499ce8d..6a9934523c 100644 --- a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_open.c +++ b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_open.c @@ -23,7 +23,8 @@ typedef struct open_status_s open_status; * in that case, create the file if we were passed MPI_MODE_CREATE * . if the create fails, that means someone else created the file between * our call to lookup and our call to create (like if N processors all - * open the same file with MPI_COMM_SELF) + * open the same file with MPI_COMM_SELF). Then we can just look up the + * file (which now exists). * * the good news is that only one processor does this and broadcasts the * handle to everyone else in the communicator @@ -55,7 +56,7 @@ static void fake_an_open(PVFS_fs_id fs_id, char *pvfs_name, int access_mode, ret = PVFS_sys_lookup(fs_id, pvfs_name, &(pvfs2_fs->credentials), &resp_lookup, PVFS2_LOOKUP_LINK_FOLLOW); - if ( (ret < 0) ) { /* XXX: check what the error was */ + if ( ret == (-PVFS_ENOENT)) { if (access_mode & ADIO_CREATE) { ret = PVFS_sys_getparent(fs_id, pvfs_name, &(pvfs2_fs->credentials), &resp_getparent); @@ -85,7 +86,12 @@ static void fake_an_open(PVFS_fs_id fs_id, char *pvfs_name, int access_mode, resp_getparent.parent_ref, attribs, &(pvfs2_fs->credentials), dist, &resp_create); - if (ret < 0) { /* XXX: should only do this for EEXISTS */ + /* if many creates are happening in this directory, the earlier + * sys_lookup may have returned ENOENT, but the sys_create could + * return EEXISTS. That means the file has been created anyway, so + * less work for us and we can just open it up and return the + * handle */ + if (ret == (-PVFS_EEXIST)) { ret = PVFS_sys_lookup(fs_id, pvfs_name, &(pvfs2_fs->credentials), &resp_lookup, PVFS2_LOOKUP_LINK_FOLLOW); @@ -105,7 +111,7 @@ static void fake_an_open(PVFS_fs_id fs_id, char *pvfs_name, int access_mode, } } else if (access_mode & ADIO_EXCL) { /* lookup should not succeed if opened with EXCL */ - o_status->error = -1; /* XXX: what should it be? */ + o_status->error = -PVFS_EEXIST; return; } else { o_status->object_ref = resp_lookup.ref; @@ -209,6 +215,7 @@ void ADIOI_PVFS2_Open(ADIO_File fd, int *error_code) if (o_status.error != 0) { ADIOI_Free(pvfs2_fs); + fd->fs_ptr = NULL; *error_code = MPIO_Err_create_code(MPI_SUCCESS, MPIR_ERR_RECOVERABLE, myname, __LINE__, diff --git a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_read.c b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_read.c index cab5c3834b..c2cd4cc09c 100644 --- a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_read.c +++ b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_read.c @@ -139,7 +139,7 @@ void ADIOI_PVFS2_ReadStrided(ADIO_File fd, void *buf, int count, * are actually contiguous and do not need the expensive workarond */ if (!filetype_is_contig) { flat_file = ADIOI_Flatlist; - while (flat_buf->type != fd->filetype) flat_file = flat_file->next; + while (flat_file->type != fd->filetype) flat_file = flat_file->next; if (flat_file->count == 1) filetype_is_contig = 1; } @@ -675,8 +675,6 @@ void ADIOI_PVFS2_ReadStrided(ADIO_File fd, void *buf, int count, max_mem_list = mem_list_count; if (max_file_list < file_list_count) max_file_list = file_list_count; - if (max_mem_list == MAX_ARRAY_SIZE) - break; } /* while (size_read < bufsize) */ /* one last check before we actually carry out the operation: diff --git a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_write.c b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_write.c index 00bad6e3a7..3705c4f35c 100644 --- a/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_write.c +++ b/ompi/mca/io/romio/romio/adio/ad_pvfs2/ad_pvfs2_write.c @@ -160,7 +160,7 @@ void ADIOI_PVFS2_WriteStrided(ADIO_File fd, void *buf, int count, * are actually contiguous and do not need the expensive workarond */ if (!filetype_is_contig) { flat_file = ADIOI_Flatlist; - while (flat_buf->type != fd->filetype) flat_file = flat_file->next; + while (flat_file->type != fd->filetype) flat_file = flat_file->next; if (flat_file->count == 1) filetype_is_contig = 1; } @@ -727,8 +727,6 @@ void ADIOI_PVFS2_WriteStrided(ADIO_File fd, void *buf, int count, max_mem_list = mem_list_count; if (max_file_list < file_list_count) max_file_list = file_list_count; - if (max_mem_list == MAX_ARRAY_SIZE) - break; } /* while (size_wrote < bufsize) */ /* one last check before we actually carry out the operation: diff --git a/ompi/mca/io/romio/romio/adio/ad_testfs/ad_testfs_done.c b/ompi/mca/io/romio/romio/adio/ad_testfs/ad_testfs_done.c index fed658b5d1..36ddb14c01 100644 --- a/ompi/mca/io/romio/romio/adio/ad_testfs/ad_testfs_done.c +++ b/ompi/mca/io/romio/romio/adio/ad_testfs/ad_testfs_done.c @@ -16,12 +16,16 @@ int ADIOI_TESTFS_ReadDone(ADIO_Request *request, ADIO_Status *status, int *error_code = MPI_SUCCESS; if (*request == ADIO_REQUEST_NULL) { - FPRINTF(stdout, "ADIOI_TESTFS_ReadDone called on ADIO_REQUEST_NULL\n"); + MPI_Comm_size( MPI_COMM_WORLD, &nprocs ); + MPI_Comm_rank( MPI_COMM_WORLD, &myrank ); + FPRINTF(stdout, "[%d/%d] ADIOI_TESTFS_ReadDone called on ADIO_REQUEST_NULL\n", + myrank, nprocs); return 1; } MPI_Comm_size((*request)->fd->comm, &nprocs); MPI_Comm_rank((*request)->fd->comm, &myrank); + FPRINTF(stdout, "[%d/%d] ADIOI_TESTFS_ReadDone called on %s\n", myrank, nprocs, (*request)->fd->filename); @@ -42,7 +46,10 @@ int ADIOI_TESTFS_WriteDone(ADIO_Request *request, ADIO_Status *status, int *error_code = MPI_SUCCESS; if (*request == ADIO_REQUEST_NULL) { - FPRINTF(stdout, "ADIOI_TESTFS_WriteDone called on ADIO_REQUEST_NULL\n"); + MPI_Comm_size( MPI_COMM_WORLD, &nprocs ); + MPI_Comm_rank( MPI_COMM_WORLD, &myrank ); + FPRINTF(stdout, "[%d/%d] ADIOI_TESTFS_WriteDone called on ADIO_REQUEST_NULL\n", + myrank, nprocs); return 1; } diff --git a/ompi/mca/io/romio/romio/adio/common/ad_write_coll.c b/ompi/mca/io/romio/romio/adio/common/ad_write_coll.c index fc34fd1211..907f1c617b 100644 --- a/ompi/mca/io/romio/romio/adio/common/ad_write_coll.c +++ b/ompi/mca/io/romio/romio/adio/common/ad_write_coll.c @@ -84,7 +84,7 @@ void ADIOI_GEN_WriteStridedColl(ADIO_File fd, void *buf, int count, unsigned long long max_pe_request = 0; unsigned long long min_rd_request = ULONG_MAX; unsigned long long max_rd_request = 0; - int old_error; + int old_error, tmp_error; MPI_Info_get(fd->info, "ompi_enable_parallel_optimizations", MPI_MAX_INFO_VAL, value, &info_flag); @@ -283,9 +283,6 @@ void ADIOI_GEN_WriteStridedColl(ADIO_File fd, void *buf, int count, * We carry out a collective communication at the end here so no one * can start independent i/o before collective I/O completes. * - * optimization: if only one process performing i/o, we can perform - * a less-expensive Bcast - * * need to do some gymnastics with the error codes so that if something * went wrong, all processes report error, but if a process has a more * specific error code, we can still have that process report the @@ -294,12 +291,16 @@ void ADIOI_GEN_WriteStridedColl(ADIO_File fd, void *buf, int count, old_error = *error_code; if (*error_code != MPI_SUCCESS) *error_code = MPI_ERR_IO; + /* optimization: if only one process performing i/o, we can perform + * a less-expensive Bcast */ if (fd->hints->cb_nodes == 1) MPI_Bcast(error_code, 1, MPI_INT, fd->hints->ranklist[0], fd->comm); - else - MPI_Allreduce(MPI_IN_PLACE, error_code, 1, MPI_INT, + else { + tmp_error = *error_code; + MPI_Allreduce(&tmp_error, error_code, 1, MPI_INT, MPI_MAX, fd->comm); + } if ( (old_error != MPI_SUCCESS) && (old_error != MPI_ERR_IO) ) *error_code = old_error; diff --git a/ompi/mca/io/romio/romio/adio/common/strfns.c b/ompi/mca/io/romio/romio/adio/common/strfns.c index f0da8ff7b7..08aeb4a8b1 100644 --- a/ompi/mca/io/romio/romio/adio/common/strfns.c +++ b/ompi/mca/io/romio/romio/adio/common/strfns.c @@ -163,6 +163,7 @@ char *ADIOI_Strdup( const char *str ) * We need an snprintf replacement for systems without one */ #ifndef HAVE_SNPRINTF +#include /* FIXME: Really need a check for varargs.h vs stdarg.h */ #include /* @@ -267,11 +268,10 @@ int ADIOI_Snprintf( char *str, size_t size, const char *format, ... ) case 'p': { - int val; + void *val; char tmp[20]; char *t = tmp; - /* Get the argument, of integer type */ - val = va_arg( list, int ); + val = va_arg( list, void * ); sprintf( tmp, "%p", val ); if (width > 0) { int tmplen = strlen(tmp); diff --git a/ompi/mca/io/romio/romio/configure.in b/ompi/mca/io/romio/romio/configure.in index 2f5c0df6ca..539d11385b 100644 --- a/ompi/mca/io/romio/romio/configure.in +++ b/ompi/mca/io/romio/romio/configure.in @@ -162,6 +162,8 @@ AC_ARG_ENABLE(debug, [--enable-debug - Build a debugging version],,) AC_ARG_WITH(file-system,[ --with-file-system=name - Build with support for the named file systems],,) +AC_ARG_WITH(pvfs2,[ +--with-pvfs2=path - Path to installation of PVFS (version 2)],,) AC_ARG_WITH(mpi,[ --with-mpi=name - Specify MPI implementation to build ROMIO for],,) dnl @@ -776,6 +778,8 @@ fi ]) if test "$pac_cv_int_hold_pointer" != yes ; then AC_DEFINE(INT_LT_POINTER,1,[Define if int smaller than pointer]) + dnl Switch to a conforming name (start with HAVE or USE) + AC_DEFINE(HAVE_INT_LT_POINTER,1,[Define if int smaller than pointer]) fi # dnl The original ROMIO configure used a set of complex tests here; this @@ -1086,6 +1090,27 @@ fi file_system_testfs=1 FILE_SYSTEM="testfs $FILE_SYSTEM" +# An attempt to "do the right thing" with as little help from the end-user as +# possible: +# - if 'with-pvfs2' given, use that to find pvfs2-config. complain if we +# cannot find it, as this is probably what the user would expect +# - if we can find 'pvfs2-config' in our path, we can use it to set CFLAGS, +# LIBS, and LDFLAGS accordingly +# - as a fallback, use CFLAGS, LIBS, and LDFLAGS passed in by the user + +AC_PATH_PROG(PVFS2_CONFIG, pvfs2-config, notfound, [$PATH:${with_pvfs2}/bin]) +if test $PVFS2_CONFIG != "notfound" ; then + CFLAGS="$CFLAGS $( $PVFS2_CONFIG --cflags)" + LIBS="$LIBS $( $PVFS2_CONFIG --libs)" + ROMIO_LIBLIST="$ROMIO_LIBLIST $LIBS" + FILE_SYSTEM="pvfs2 $FILE_SYSTEM" + file_system_pvfs2=1 +fi + +if test "$PVFS2_CONFIG" = "notfound" -a -n "$with_pvfs2" ; then + AC_MSG_ERROR([pvfs2-config not found in $with_pvfs2]) +fi + # # Print list of configured file systems # @@ -1201,6 +1226,8 @@ if test -n "$file_system_pvfs"; then fi fi + + # # Verify presence of pvfs2.h # diff --git a/ompi/mca/io/romio/romio/mpi-io/fortran/Makefile.in b/ompi/mca/io/romio/romio/mpi-io/fortran/Makefile.in index 9fce3caa26..dbce6f5186 100644 --- a/ompi/mca/io/romio/romio/mpi-io/fortran/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi-io/fortran/Makefile.in @@ -105,4 +105,118 @@ P$(SHLIBNAME).la: $(MPIO_TMP_LOPFOBJECTS) # -------------------------------------------------------------------------- clean: - @rm -f *.o *.lo + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg + +# Rules for the profiling objects +_closef.o: closef.c + $(CC) $(CFLAGS) -c $(srcdir)/closef.c -o _closef.o +_readf.o: readf.c + $(CC) $(CFLAGS) -c $(srcdir)/readf.c -o _readf.o +_openf.o: openf.c + $(CC) $(CFLAGS) -c $(srcdir)/openf.c -o _openf.o +_get_extentf.o: get_extentf.c + $(CC) $(CFLAGS) -c $(srcdir)/get_extentf.c -o _get_extentf.o +_writef.o: writef.c + $(CC) $(CFLAGS) -c $(srcdir)/writef.c -o _writef.o +_set_viewf.o: set_viewf.c + $(CC) $(CFLAGS) -c $(srcdir)/set_viewf.c -o _set_viewf.o +_seekf.o: seekf.c + $(CC) $(CFLAGS) -c $(srcdir)/seekf.c -o _seekf.o +_read_atf.o: read_atf.c + $(CC) $(CFLAGS) -c $(srcdir)/read_atf.c -o _read_atf.o +_ireadf.o: ireadf.c + $(CC) $(CFLAGS) -c $(srcdir)/ireadf.c -o _ireadf.o +_iwritef.o: iwritef.c + $(CC) $(CFLAGS) -c $(srcdir)/iwritef.c -o _iwritef.o +_iotestf.o: iotestf.c + $(CC) $(CFLAGS) -c $(srcdir)/iotestf.c -o _iotestf.o +_iowaitf.o: iowaitf.c + $(CC) $(CFLAGS) -c $(srcdir)/iowaitf.c -o _iowaitf.o +_get_posnf.o: get_posnf.c + $(CC) $(CFLAGS) -c $(srcdir)/get_posnf.c -o _get_posnf.o +_deletef.o: deletef.c + $(CC) $(CFLAGS) -c $(srcdir)/deletef.c -o _deletef.o +_read_allf.o: read_allf.c + $(CC) $(CFLAGS) -c $(srcdir)/read_allf.c -o _read_allf.o +_read_atallf.o: read_atallf.c + $(CC) $(CFLAGS) -c $(srcdir)/read_atallf.c -o _read_atallf.o +_iread_atf.o: iread_atf.c + $(CC) $(CFLAGS) -c $(srcdir)/iread_atf.c -o _iread_atf.o +_iwrite_atf.o: iwrite_atf.c + $(CC) $(CFLAGS) -c $(srcdir)/iwrite_atf.c -o _iwrite_atf.o +_get_bytofff.o: get_bytofff.c + $(CC) $(CFLAGS) -c $(srcdir)/get_bytofff.c -o _get_bytofff.o +_write_allf.o: write_allf.c + $(CC) $(CFLAGS) -c $(srcdir)/write_allf.c -o _write_allf.o +_write_atf.o: write_atf.c + $(CC) $(CFLAGS) -c $(srcdir)/write_atf.c -o _write_atf.o +_write_atallf.o: write_atallf.c + $(CC) $(CFLAGS) -c $(srcdir)/write_atallf.c -o _write_atallf.o +_get_viewf.o: get_viewf.c + $(CC) $(CFLAGS) -c $(srcdir)/get_viewf.c -o _get_viewf.o +_get_groupf.o: get_groupf.c + $(CC) $(CFLAGS) -c $(srcdir)/get_groupf.c -o _get_groupf.o +_get_amodef.o: get_amodef.c + $(CC) $(CFLAGS) -c $(srcdir)/get_amodef.c -o _get_amodef.o +_fsyncf.o: fsyncf.c + $(CC) $(CFLAGS) -c $(srcdir)/fsyncf.c -o _fsyncf.o +_get_atomf.o: get_atomf.c + $(CC) $(CFLAGS) -c $(srcdir)/get_atomf.c -o _get_atomf.o +_set_atomf.o: set_atomf.c + $(CC) $(CFLAGS) -c $(srcdir)/set_atomf.c -o _set_atomf.o +_set_sizef.o: set_sizef.c + $(CC) $(CFLAGS) -c $(srcdir)/set_sizef.c -o _set_sizef.o +_get_sizef.o: get_sizef.c + $(CC) $(CFLAGS) -c $(srcdir)/get_sizef.c -o _get_sizef.o +_preallocf.o: preallocf.c + $(CC) $(CFLAGS) -c $(srcdir)/preallocf.c -o _preallocf.o +_set_infof.o: set_infof.c + $(CC) $(CFLAGS) -c $(srcdir)/set_infof.c -o _set_infof.o +_get_infof.o: get_infof.c + $(CC) $(CFLAGS) -c $(srcdir)/get_infof.c -o _get_infof.o +_rd_atallbf.o: rd_atallbf.c + $(CC) $(CFLAGS) -c $(srcdir)/rd_atallbf.c -o _rd_atallbf.o +_rd_atallef.o: rd_atallef.c + $(CC) $(CFLAGS) -c $(srcdir)/rd_atallef.c -o _rd_atallef.o +_read_allbf.o: read_allbf.c + $(CC) $(CFLAGS) -c $(srcdir)/read_allbf.c -o _read_allbf.o +_read_allef.o: read_allef.c + $(CC) $(CFLAGS) -c $(srcdir)/read_allef.c -o _read_allef.o +_wr_atallbf.o: wr_atallbf.c + $(CC) $(CFLAGS) -c $(srcdir)/wr_atallbf.c -o _wr_atallbf.o +_wr_atallef.o: wr_atallef.c + $(CC) $(CFLAGS) -c $(srcdir)/wr_atallef.c -o _wr_atallef.o +_write_allbf.o: write_allbf.c + $(CC) $(CFLAGS) -c $(srcdir)/write_allbf.c -o _write_allbf.o +_write_allef.o: write_allef.c + $(CC) $(CFLAGS) -c $(srcdir)/write_allef.c -o _write_allef.o +_get_posn_shf.o: get_posn_shf.c + $(CC) $(CFLAGS) -c $(srcdir)/get_posn_shf.c -o _get_posn_shf.o +_iread_shf.o: iread_shf.c + $(CC) $(CFLAGS) -c $(srcdir)/iread_shf.c -o _iread_shf.o +_read_shf.o: read_shf.c + $(CC) $(CFLAGS) -c $(srcdir)/read_shf.c -o _read_shf.o +_write_shf.o: write_shf.c + $(CC) $(CFLAGS) -c $(srcdir)/write_shf.c -o _write_shf.o +_iwrite_shf.o: iwrite_shf.c + $(CC) $(CFLAGS) -c $(srcdir)/iwrite_shf.c -o _iwrite_shf.o +_seek_shf.o: seek_shf.c + $(CC) $(CFLAGS) -c $(srcdir)/seek_shf.c -o _seek_shf.o +_read_ordf.o: read_ordf.c + $(CC) $(CFLAGS) -c $(srcdir)/read_ordf.c -o _read_ordf.o +_read_ordef.o: read_ordef.c + $(CC) $(CFLAGS) -c $(srcdir)/read_ordef.c -o _read_ordef.o +_write_ordbf.o: write_ordbf.c + $(CC) $(CFLAGS) -c $(srcdir)/write_ordbf.c -o _write_ordbf.o +_read_ordbf.o: read_ordbf.c + $(CC) $(CFLAGS) -c $(srcdir)/read_ordbf.c -o _read_ordbf.o +_write_ordf.o: write_ordf.c + $(CC) $(CFLAGS) -c $(srcdir)/write_ordf.c -o _write_ordf.o +_write_ordef.o: write_ordef.c + $(CC) $(CFLAGS) -c $(srcdir)/write_ordef.c -o _write_ordef.o +_set_errhf.o: set_errhf.c + $(CC) $(CFLAGS) -c $(srcdir)/set_errhf.c -o _set_errhf.o +_get_errhf.o: get_errhf.c + $(CC) $(CFLAGS) -c $(srcdir)/get_errhf.c -o _get_errhf.o diff --git a/ompi/mca/io/romio/romio/mpi-io/glue/default/Makefile.in b/ompi/mca/io/romio/romio/mpi-io/glue/default/Makefile.in index a3210fd8fa..51cde8a0d9 100644 --- a/ompi/mca/io/romio/romio/mpi-io/glue/default/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi-io/glue/default/Makefile.in @@ -47,4 +47,6 @@ $(SHLIBNAME).la: $(MPIO_LOOBJECTS) $(AR) $(SHLIBNAME).la $(MPIO_LOOBJECTS) clean: - @rm -f *.o *.lo + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg diff --git a/ompi/mca/io/romio/romio/mpi-io/glue/mpich1/Makefile.in b/ompi/mca/io/romio/romio/mpi-io/glue/mpich1/Makefile.in index a3210fd8fa..51cde8a0d9 100644 --- a/ompi/mca/io/romio/romio/mpi-io/glue/mpich1/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi-io/glue/mpich1/Makefile.in @@ -47,4 +47,6 @@ $(SHLIBNAME).la: $(MPIO_LOOBJECTS) $(AR) $(SHLIBNAME).la $(MPIO_LOOBJECTS) clean: - @rm -f *.o *.lo + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg diff --git a/ompi/mca/io/romio/romio/mpi-io/glue/mpich2/Makefile.in b/ompi/mca/io/romio/romio/mpi-io/glue/mpich2/Makefile.in index a3210fd8fa..51cde8a0d9 100644 --- a/ompi/mca/io/romio/romio/mpi-io/glue/mpich2/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi-io/glue/mpich2/Makefile.in @@ -47,4 +47,6 @@ $(SHLIBNAME).la: $(MPIO_LOOBJECTS) $(AR) $(SHLIBNAME).la $(MPIO_LOOBJECTS) clean: - @rm -f *.o *.lo + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg diff --git a/ompi/mca/io/romio/romio/mpi-io/ioreq_f2c.c b/ompi/mca/io/romio/romio/mpi-io/ioreq_f2c.c index 4d86161b45..bcc9c73174 100644 --- a/ompi/mca/io/romio/romio/mpi-io/ioreq_f2c.c +++ b/ompi/mca/io/romio/romio/mpi-io/ioreq_f2c.c @@ -49,17 +49,16 @@ MPIO_Request MPIO_Request_f2c(MPI_Fint request) MPIU_THREAD_SINGLE_CS_ENTER("io"); - /* --BEGIN ERROR HANDLING-- */ if (!request) { - error_code = MPIO_REQUEST_NULL; - goto fn_exit; + return MPIO_REQUEST_NULL; } + /* --BEGIN ERROR HANDLING-- */ if ((request < 0) || (request > ADIOI_Reqtable_ptr)) { error_code = MPIO_Err_create_code(MPI_SUCCESS, MPIR_ERR_RECOVERABLE, myname, __LINE__, MPI_ERR_REQUEST, "**request", 0); error_code = MPIO_Err_return_file(MPI_FILE_NULL, error_code); - goto fn_exit; + return MPIO_REQUEST_NULL; } /* --END ERROR HANDLING-- */ diff --git a/ompi/mca/io/romio/romio/mpi2-other/array/Makefile.in b/ompi/mca/io/romio/romio/mpi2-other/array/Makefile.in index 001d0d87ba..41a366e398 100644 --- a/ompi/mca/io/romio/romio/mpi2-other/array/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi2-other/array/Makefile.in @@ -42,7 +42,7 @@ all: $(LIBNAME) .c.sp: $(C_COMPILE_SHL) $(CFLAGS) -c $< -o _$*.lo -profile: $(MPIO_TMP_POBJECTS) +profile: $(MPIO_REAL_POBJECTS) $(AR) $(LIBNAME) $(MPIO_REAL_POBJECTS) $(RANLIB) $(LIBNAME) @if [ "@ENABLE_SHLIB@" != "none" ] ; then \ @@ -68,4 +68,13 @@ P$(SHLIBNAME).la: $(MPIO_TMP_LOPOBJECTS) # -------------------------------------------------------------------------- clean: - @rm -f *.o *.lo + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg + +# Rules for the profiling objects +_subarray.o: subarray.c + $(CC) $(CFLAGS) -c $(srcdir)/subarray.c -o _subarray.o +_darray.o: darray.c + $(CC) $(CFLAGS) -c $(srcdir)/darray.c -o _darray.o + diff --git a/ompi/mca/io/romio/romio/mpi2-other/array/fortran/Makefile.in b/ompi/mca/io/romio/romio/mpi2-other/array/fortran/Makefile.in index bd40d0b610..63c8fe5e02 100644 --- a/ompi/mca/io/romio/romio/mpi2-other/array/fortran/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi2-other/array/fortran/Makefile.in @@ -27,7 +27,7 @@ all: $(LIBNAME) $(CC) $(CFLAGS) -c _$*.c @rm -f _$*.c -profile: $(MPIO_TMP_PFOBJECTS) +profile: $(MPIO_REAL_PFOBJECTS) $(AR) $(LIBNAME) $(MPIO_REAL_PFOBJECTS) $(RANLIB) $(LIBNAME) @rm -f _*.o @@ -37,4 +37,12 @@ $(LIBNAME): $(MPIO_FOBJECTS) $(RANLIB) $(LIBNAME) clean: - @rm -f *.o + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg + +# Rules for the profiling objects +_subarrayf.o: subarrayf.c + $(CC) $(CFLAGS) -c $(srcdir)/subarrayf.c -o _subarrayf.o +_darrayf.o: darrayf.c + $(CC) $(CFLAGS) -c $(srcdir)/darrayf.c -o _darrayf.o diff --git a/ompi/mca/io/romio/romio/mpi2-other/info/Makefile.in b/ompi/mca/io/romio/romio/mpi2-other/info/Makefile.in index aa5d39cfef..b77f08e2b3 100644 --- a/ompi/mca/io/romio/romio/mpi2-other/info/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi2-other/info/Makefile.in @@ -49,7 +49,7 @@ all: $(LIBNAME) .c.sp: $(C_COMPILE_SHL) $(CFLAGS) -c $< -o _$*.lo -profile: $(MPIO_TMP_POBJECTS) +profile: $(MPIO_REAL_POBJECTS) $(AR) $(LIBNAME) $(MPIO_REAL_POBJECTS) $(RANLIB) $(LIBNAME) @if [ "@ENABLE_SHLIB@" != "none" ] ; then \ @@ -75,4 +75,31 @@ P$(SHLIBNAME).la: $(MPIO_TMP_LOPOBJECTS) # -------------------------------------------------------------------------- clean: - @rm -f *.o *.lo + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg + + +# Rules for the profiling objects +info_create.o: infocreate.c + $(CC) $(CFLAGS) -c $(srcdir)/infocreate.c -o _info_create.o +info_dup.o: infodup.c + $(CC) $(CFLAGS) -c $(srcdir)/infodup.c -o _info_dup.o +info_get.o: infoget.c + $(CC) $(CFLAGS) -c $(srcdir)/infoget.c -o _info_get.o +info_getnth.o: infogetnth.c + $(CC) $(CFLAGS) -c $(srcdir)/infogetnth.c -o _info_getnth.o +info_set.o: infoset.c + $(CC) $(CFLAGS) -c $(srcdir)/infoset.c -o _info_set.o +info_delete.o: infodelete.c + $(CC) $(CFLAGS) -c $(srcdir)/infodelete.c -o _info_delete.o +info_free.o: infofree.c + $(CC) $(CFLAGS) -c $(srcdir)/infofree.c -o _info_free.o +info_getnks.o: infogetnks.c + $(CC) $(CFLAGS) -c $(srcdir)/infogetnks.c -o _info_getnks.o +info_getvln.o: infogetvln.c + $(CC) $(CFLAGS) -c $(srcdir)/infogetvln.c -o _info_getvln.o +info_c2f.o: infoc2f.c + $(CC) $(CFLAGS) -c $(srcdir)/infoc2f.c -o _info_c2f.o +info_f2c.o: infof2c.c + $(CC) $(CFLAGS) -c $(srcdir)/infof2c.c -o _info_f2c.o diff --git a/ompi/mca/io/romio/romio/mpi2-other/info/fortran/Makefile.in b/ompi/mca/io/romio/romio/mpi2-other/info/fortran/Makefile.in index 9ad5da5abd..c84769c546 100644 --- a/ompi/mca/io/romio/romio/mpi2-other/info/fortran/Makefile.in +++ b/ompi/mca/io/romio/romio/mpi2-other/info/fortran/Makefile.in @@ -30,7 +30,7 @@ all: $(LIBNAME) $(CC) $(CFLAGS) -c _$*.c @rm -f _$*.c -profile: $(MPIO_TMP_POBJECTS) +profile: $(MPIO_REAL_POBJECTS) $(AR) $(LIBNAME) $(MPIO_REAL_POBJECTS) $(RANLIB) $(LIBNAME) @rm -f _*.o @@ -40,4 +40,26 @@ $(LIBNAME): $(MPIO_OBJECTS) $(RANLIB) $(LIBNAME) clean: - @rm -f *.o + @rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg + @rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda + @rm -f ${srcdir}/*.bb ${srcdir}/*.bbg + +# Rules for the profiling objects +_info_createf.o: info_createf.c + $(CC) $(CFLAGS) -c $(srcdir)/info_createf.c -o _info_createf.o +_info_dupf.o: info_dupf.c + $(CC) $(CFLAGS) -c $(srcdir)/info_dupf.c -o _info_dupf.o +_info_getf.o: info_getf.c + $(CC) $(CFLAGS) -c $(srcdir)/info_getf.c -o _info_getf.o +_info_getnthf.o: info_getnthf.c + $(CC) $(CFLAGS) -c $(srcdir)/info_getnthf.c -o _info_getnthf.o +_info_setf.o: info_setf.c + $(CC) $(CFLAGS) -c $(srcdir)/info_setf.c -o _info_setf.o +_info_deletef.o: info_deletef.c + $(CC) $(CFLAGS) -c $(srcdir)/info_deletef.c -o _info_deletef.o +_info_freef.o: info_freef.c + $(CC) $(CFLAGS) -c $(srcdir)/info_freef.c -o _info_freef.o +_info_getnksf.o: info_getnksf.c + $(CC) $(CFLAGS) -c $(srcdir)/info_getnksf.c -o _info_getnksf.o +_info_getvlnf.o: info_getvlnf.c + $(CC) $(CFLAGS) -c $(srcdir)/info_getvlnf.c -o _info_getvlnf.o diff --git a/ompi/mca/io/romio/romio/test/fcoll_test.f.in b/ompi/mca/io/romio/romio/test/fcoll_test.f.in index 71e97bd78d..9c2b172218 100644 --- a/ompi/mca/io/romio/romio/test/fcoll_test.f.in +++ b/ompi/mca/io/romio/romio/test/fcoll_test.f.in @@ -1,3 +1,8 @@ +! -*- Mode: Fortran; -*- +! +! (C) 2001 by Argonne National Laboratory. +! See COPYRIGHT in top-level directory. +! program main implicit none diff --git a/ompi/mca/io/romio/romio/test/fmisc.f.in b/ompi/mca/io/romio/romio/test/fmisc.f.in index cf7a064c2f..5bfaa038b2 100644 --- a/ompi/mca/io/romio/romio/test/fmisc.f.in +++ b/ompi/mca/io/romio/romio/test/fmisc.f.in @@ -1,3 +1,8 @@ +! -*- Mode: Fortran; -*- +! +! (C) 2001 by Argonne National Laboratory. +! See COPYRIGHT in top-level directory. +! program main implicit none diff --git a/ompi/mca/io/romio/romio/test/fperf.f.in b/ompi/mca/io/romio/romio/test/fperf.f.in index a0a7b01b64..e4ff4d15eb 100644 --- a/ompi/mca/io/romio/romio/test/fperf.f.in +++ b/ompi/mca/io/romio/romio/test/fperf.f.in @@ -1,3 +1,8 @@ +! -*- Mode: Fortran; -*- +! +! (C) 2001 by Argonne National Laboratory. +! See COPYRIGHT in top-level directory. +! program main implicit none diff --git a/ompi/mca/io/romio/romio/test/large_file.c.in b/ompi/mca/io/romio/romio/test/large_file.c.in index 3e747553b7..3189e836fa 100644 --- a/ompi/mca/io/romio/romio/test/large_file.c.in +++ b/ompi/mca/io/romio/romio/test/large_file.c.in @@ -1,3 +1,8 @@ +/* -*- Mode: C; c-basic-offset:4 ; -*- */ +/* + * (C) 2001 by Argonne National Laboratory. + * See COPYRIGHT in top-level directory. + */ #include "mpi.h" #include #include diff --git a/ompi/mca/io/romio/romio/test/misc.c.in b/ompi/mca/io/romio/romio/test/misc.c.in index 57b450cc92..6ff0e9b3b3 100644 --- a/ompi/mca/io/romio/romio/test/misc.c.in +++ b/ompi/mca/io/romio/romio/test/misc.c.in @@ -1,3 +1,8 @@ +/* -*- Mode: C; c-basic-offset:4 ; -*- */ +/* + * (C) 2001 by Argonne National Laboratory. + * See COPYRIGHT in top-level directory. + */ #include "mpi.h" #include #include diff --git a/ompi/mca/io/romio/romio/test/noncontig_coll2.c b/ompi/mca/io/romio/romio/test/noncontig_coll2.c index 568ca95295..aa056c7deb 100644 --- a/ompi/mca/io/romio/romio/test/noncontig_coll2.c +++ b/ompi/mca/io/romio/romio/test/noncontig_coll2.c @@ -476,13 +476,19 @@ int test_file(char *filename, int mynod, int nprocs, char * cb_hosts, char *msg, MPI_File_set_view(fh, 0, MPI_INT, newtype, "native", info); for (i=0; i