1
1

Fix some problems with errhandlers:

* Fix MPI-2 page number in comments for a specific reference in the
   spec
 * Allow getting/setting the errhandler on MPI_FILE_NULL
 * Allow freeing of intrinsic errhandlers, per MPI-2 errata (if you GET
   an errhandler on a communicator, you must be able to FREE it, even
   if it's an intrinsic).

Thanks to Lisandro Dalcin for reporting these problems.

This commit was SVN r12122.
Этот коммит содержится в:
Jeff Squyres 2006-10-16 12:58:40 +00:00
родитель e7a7a64e4c
Коммит 407b3cb788
6 изменённых файлов: 17 добавлений и 7 удалений

8
NEWS
Просмотреть файл

@ -64,6 +64,14 @@ version 1.0.
- Addition of UDAPL BTL ("udapl").
1.1.3
-----
- Fix several MPI_*ERRHANDLER* functions with respect to what
arguments they allowed and the behavior that they effected. Thanks
to Lisandro Dalcin for reporting the problems.
1.1.2
-----

Просмотреть файл

@ -37,8 +37,7 @@ int MPI_Errhandler_free(MPI_Errhandler *errhandler)
if (MPI_PARAM_CHECK) {
OMPI_ERR_INIT_FINALIZE(FUNC_NAME);
if (NULL == errhandler ||
ompi_errhandler_is_intrinsic(*errhandler)) {
if (NULL == errhandler) {
return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_ARG,
"MPI_Errhandler_free");
}

Просмотреть файл

@ -50,7 +50,7 @@ int MPI_File_delete(char *filename, MPI_Info info)
OMPI_ERRHANDLER_CHECK(rc, MPI_FILE_NULL, rc, FUNC_NAME);
}
/* Note that MPI-2:9.7 (p265) says that errors in MPI_FILE_OPEN
/* Note that MPI-2:9.7 (p261) says that errors in MPI_FILE_OPEN
(before the file handle is created) should invoke the default
error handler on MPI_FILE_NULL. Hence, if we get a file handle
out of ompi_file_open(), invoke the error handler on that. If

Просмотреть файл

@ -38,8 +38,11 @@ int MPI_File_get_errhandler( MPI_File file, MPI_Errhandler *errhandler)
if (MPI_PARAM_CHECK) {
OMPI_ERR_INIT_FINALIZE(FUNC_NAME);
if (NULL == file ||
MPI_FILE_NULL == file) {
/* Note that MPI-2:9.7 (p261) explicitly says that you are
allowed to set the error handler on MPI_FILE_NULL */
if (NULL == file) {
return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_FILE,
"MPI_File_get_errhandler");
} else if (NULL == errhandler) {

Просмотреть файл

@ -56,7 +56,7 @@ int MPI_File_open(MPI_Comm comm, char *filename, int amode,
}
/* Note that MPI-2:9.7 (p265) says that errors in MPI_FILE_OPEN
/* Note that MPI-2:9.7 (p261) says that errors in MPI_FILE_OPEN
(before the file handle is created) should invoke the default
error handler on MPI_FILE_NULL. Hence, if we get a file handle
out of ompi_file_open(), invoke the error handler on that. If

Просмотреть файл

@ -39,7 +39,7 @@ int MPI_File_set_errhandler( MPI_File file, MPI_Errhandler errhandler)
if (MPI_PARAM_CHECK) {
OMPI_ERR_INIT_FINALIZE(FUNC_NAME);
/* Note that MPI-2:9.7 (p265) explicitly says that you are
/* Note that MPI-2:9.7 (p261) explicitly says that you are
allowed to set the error handler on MPI_FILE_NULL */
if (NULL == file) {