[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1rc2-208-gea817af
mysql vizuser
noreply at mpich.org
Fri Jan 31 15:38:35 CST 2014
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".
The branch, master has been updated
via ea817af419894afbea6a2442c21b0b962fe5f087 (commit)
via 2edc1fd227fcc4aaa18d0c9be68486240ae446b2 (commit)
via 9e3e62b32c17d53b00763da5ab2eee13fb15bf7f (commit)
via 4f477f61893f3b5a5ff9cefa2f6b2c2a445b2f56 (commit)
from 257969053c8c448211172e569c748bd9db4336c6 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://git.mpich.org/mpich.git/commitdiff/ea817af419894afbea6a2442c21b0b962fe5f087
commit ea817af419894afbea6a2442c21b0b962fe5f087
Author: Ken Raffenetti <raffenet at mcs.anl.gov>
Date: Fri Jan 31 14:37:22 2014 -0600
check for correct errclass in unpub test
Check that attempting to unpublish a service the nameserver does
not know about returns MPI_ERR_SERVICE. See 10.4.4 in the MPI standard.
Signed-off-by: Pavan Balaji <balaji at mcs.anl.gov>
diff --git a/test/mpi/errors/spawn/unpub.c b/test/mpi/errors/spawn/unpub.c
index bd0c9b0..d770512 100644
--- a/test/mpi/errors/spawn/unpub.c
+++ b/test/mpi/errors/spawn/unpub.c
@@ -15,7 +15,7 @@
int main( int argc, char *argv[] )
{
- int errs = 0;
+ int rc, errclass, errs = 0;
char port_name[MPI_MAX_PORT_NAME], serv_name[256];
MTest_Init( &argc, &argv );
@@ -25,7 +25,10 @@ int main( int argc, char *argv[] )
MPI_Comm_set_errhandler( MPI_COMM_WORLD, MPI_ERRORS_RETURN );
- MPI_Unpublish_name( serv_name, MPI_INFO_NULL, port_name );
+ rc = MPI_Unpublish_name( serv_name, MPI_INFO_NULL, port_name );
+ MPI_Error_class(rc, &errclass);
+ if (errclass != MPI_ERR_SERVICE)
+ ++errs;
MTest_Finalize( errs );
MPI_Finalize();
http://git.mpich.org/mpich.git/commitdiff/2edc1fd227fcc4aaa18d0c9be68486240ae446b2
commit 2edc1fd227fcc4aaa18d0c9be68486240ae446b2
Author: Ken Raffenetti <raffenet at mcs.anl.gov>
Date: Fri Jan 31 15:01:28 2014 -0600
corrects the MPI error class returned from MPI_Unpublish_name.
The error class should be MPI_ERR_SERVICE, not MPI_ERR_NAME, as
defined by the MPI-3 standard section 10.4.4.
Signed-off-by: Pavan Balaji <balaji at mcs.anl.gov>
diff --git a/src/nameserv/pmi/pmi_nameserv.c b/src/nameserv/pmi/pmi_nameserv.c
index 55181b6..152f56c 100644
--- a/src/nameserv/pmi/pmi_nameserv.c
+++ b/src/nameserv/pmi/pmi_nameserv.c
@@ -111,7 +111,7 @@ int MPID_NS_Unpublish( MPID_NS_Handle handle, const MPID_Info *info_ptr,
#else
rc = PMI_Unpublish_name( service_name );
#endif
- MPIU_ERR_CHKANDJUMP1(rc, mpi_errno, MPI_ERR_NAME, "**namepubnotunpub", "**namepubnotunpub %s", service_name);
+ MPIU_ERR_CHKANDJUMP1(rc, mpi_errno, MPI_ERR_SERVICE, "**namepubnotunpub", "**namepubnotunpub %s", service_name);
fn_fail:
return mpi_errno;
http://git.mpich.org/mpich.git/commitdiff/9e3e62b32c17d53b00763da5ab2eee13fb15bf7f
commit 9e3e62b32c17d53b00763da5ab2eee13fb15bf7f
Author: Ken Raffenetti <raffenet at mcs.anl.gov>
Date: Fri Jan 31 14:21:15 2014 -0600
error reporting corrections in pmi nameservice
Improves error reporting in the pmi nameservice by checking return
codes from the pmi server. Debug messages are also printed when
enabled.
Signed-off-by: Pavan Balaji <balaji at mcs.anl.gov>
diff --git a/src/pmi/simple/simple_pmi.c b/src/pmi/simple/simple_pmi.c
index 18aa0ad..24daf96 100644
--- a/src/pmi/simple/simple_pmi.c
+++ b/src/pmi/simple/simple_pmi.c
@@ -451,11 +451,12 @@ int PMI_Publish_name( const char service_name[], const char port[] )
"cmd=publish_name service=%s port=%s\n",
service_name, port );
err = GetResponse( cmd, "publish_result", 0 );
- /* FIXME: This should have used rc and msg */
if (err == PMI_SUCCESS) {
- PMIU_getval( "info", buf, PMIU_MAXLINE );
- if ( strcmp(buf,"ok") != 0 ) {
- PMIU_printf( 1, "publish failed; reason = %s\n", buf );
+ PMIU_getval( "rc", buf, PMIU_MAXLINE );
+ if ( strcmp(buf,"0") != 0 ) {
+ PMIU_getval( "msg", buf, PMIU_MAXLINE );
+ PMIU_printf( PMI_debug, "publish failed; reason = %s\n", buf );
+
return( PMI_FAIL );
}
}
@@ -479,13 +480,12 @@ int PMI_Unpublish_name( const char service_name[] )
service_name );
err = GetResponse( cmd, "unpublish_result", 0 );
if (err == PMI_SUCCESS) {
- PMIU_getval( "info", buf, PMIU_MAXLINE );
- if ( strcmp(buf,"ok") != 0 ) {
- /* FIXME: Do correct error reporting */
- /*
- PMIU_printf( 1, "unpublish failed; reason = %s\n", buf );
- */
- return( PMI_FAIL );
+ PMIU_getval( "rc", buf, PMIU_MAXLINE );
+ if ( strcmp(buf,"0") != 0 ) {
+ PMIU_getval( "msg", buf, PMIU_MAXLINE );
+ PMIU_printf( PMI_debug, "unpublish failed; reason = %s\n", buf );
+
+ return( PMI_FAIL );
}
}
}
@@ -508,12 +508,11 @@ int PMI_Lookup_name( const char service_name[], char port[] )
service_name );
err = GetResponse( cmd, "lookup_result", 0 );
if (err == PMI_SUCCESS) {
- PMIU_getval( "info", buf, PMIU_MAXLINE );
- if ( strcmp(buf,"ok") != 0 ) {
- /* FIXME: Do correct error reporting */
- /****
- PMIU_printf( 1, "lookup failed; reason = %s\n", buf );
- ****/
+ PMIU_getval( "rc", buf, PMIU_MAXLINE );
+ if ( strcmp(buf,"0") != 0 ) {
+ PMIU_getval( "msg", buf, PMIU_MAXLINE );
+ PMIU_printf( PMI_debug, "lookup failed; reason = %s\n", buf );
+
return( PMI_FAIL );
}
PMIU_getval( "port", port, MPI_MAX_PORT_NAME );
http://git.mpich.org/mpich.git/commitdiff/4f477f61893f3b5a5ff9cefa2f6b2c2a445b2f56
commit 4f477f61893f3b5a5ff9cefa2f6b2c2a445b2f56
Author: Ken Raffenetti <raffenet at mcs.anl.gov>
Date: Fri Jan 31 10:11:31 2014 -0600
fix for unpublish name behavior
When MPI_Unpublish_name is called on the pmi nameserver before any
services have been published, a segfault will occur. Add a check to
determine if anything is published so we can exit early instead.
Signed-off-by: Pavan Balaji <balaji at mcs.anl.gov>
diff --git a/src/pm/hydra/pm/pmiserv/pmiserv_pmi.c b/src/pm/hydra/pm/pmiserv/pmiserv_pmi.c
index 02fcbcc..9cd1fa0 100644
--- a/src/pm/hydra/pm/pmiserv/pmiserv_pmi.c
+++ b/src/pm/hydra/pm/pmiserv/pmiserv_pmi.c
@@ -165,6 +165,12 @@ HYD_status HYD_pmcd_pmi_unpublish(char *name, int *success)
*success = 0;
if (HYD_server_info.nameserver == NULL) {
/* no external nameserver available */
+
+ if (!HYD_pmcd_pmi_publish_list) {
+ /* nothing is published yet */
+ goto fn_exit;
+ }
+
if (!strcmp(HYD_pmcd_pmi_publish_list->name, name)) {
publish = HYD_pmcd_pmi_publish_list;
HYD_pmcd_pmi_publish_list = HYD_pmcd_pmi_publish_list->next;
-----------------------------------------------------------------------
Summary of changes:
src/nameserv/pmi/pmi_nameserv.c | 2 +-
src/pm/hydra/pm/pmiserv/pmiserv_pmi.c | 6 ++++++
src/pmi/simple/simple_pmi.c | 33 ++++++++++++++++-----------------
test/mpi/errors/spawn/unpub.c | 7 +++++--
4 files changed, 28 insertions(+), 20 deletions(-)
hooks/post-receive
--
MPICH primary repository
More information about the commits
mailing list