From 9f5bb088fad20af7b1e7384226fc5a57c20a1fb4 Mon Sep 17 00:00:00 2001 From: Hui Zhou Date: Wed, 20 Nov 2024 14:11:01 -0600 Subject: [PATCH 1/4] romio/test: fix test/aggregation1 on mac clang Although the manual says we need _XOPEN_SOURCE >= 500 in order for stdio.h to provide snprintf, apparently on Mac Clang it requires a strict > 500. Update it to 600 fixes the build error in "make check". --- src/mpi/romio/test/aggregation1.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mpi/romio/test/aggregation1.c b/src/mpi/romio/test/aggregation1.c index cce146ece8b..31bac726c8d 100644 --- a/src/mpi/romio/test/aggregation1.c +++ b/src/mpi/romio/test/aggregation1.c @@ -6,7 +6,7 @@ /* Test case from John Bent (ROMIO req #835) * Aggregation code was not handling certain access patterns when collective * buffering forced */ -#define _XOPEN_SOURCE 500 /* strdup not in string.h otherwise */ +#define _XOPEN_SOURCE 600 /* strdup not in string.h otherwise */ #include #include #include From 8bdf01071ae656f52a0a89bc8938a367074c910a Mon Sep 17 00:00:00 2001 From: Hui Zhou Date: Thu, 5 Dec 2024 10:44:43 -0600 Subject: [PATCH 2/4] ch4/spawn: enhance error reporting We need inherit the mpi_errno from the root spawn in order to report better error messages. --- src/mpid/ch4/src/ch4_spawn.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/mpid/ch4/src/ch4_spawn.c b/src/mpid/ch4/src/ch4_spawn.c index 7928fe6feec..261670a5ec6 100644 --- a/src/mpid/ch4/src/ch4_spawn.c +++ b/src/mpid/ch4/src/ch4_spawn.c @@ -40,7 +40,6 @@ int MPID_Comm_spawn_multiple(int count, char *commands[], char **argvs[], const memset(port_name, 0, sizeof(port_name)); int total_num_processes = 0; - int spawn_error = 0; int *pmi_errcodes = NULL; if (comm_ptr->rank == root) { @@ -63,29 +62,30 @@ int MPID_Comm_spawn_multiple(int count, char *commands[], char **argvs[], const mpi_errno = MPIR_pmi_spawn_multiple(count, commands, argvs, maxprocs, info_ptrs, 1, &preput_keyval_vector, pmi_errcodes); MPID_THREAD_CS_EXIT(VCI, MPIR_THREAD_VCI_PMI_MUTEX); - if (mpi_errno != MPI_SUCCESS) { - spawn_error = 1; - } - } else { - spawn_error = 1; } } int bcast_ints[2]; if (comm_ptr->rank == root) { bcast_ints[0] = total_num_processes; - bcast_ints[1] = spawn_error; + bcast_ints[1] = mpi_errno; } mpi_errno = MPIR_Bcast(bcast_ints, 2, MPI_INT, root, comm_ptr, MPIR_ERR_NONE); MPIR_ERR_CHECK(mpi_errno); if (comm_ptr->rank != root) { total_num_processes = bcast_ints[0]; - spawn_error = bcast_ints[1]; + if (bcast_ints[1]) { + /* root spawn encountered error */ + MPIR_ERR_SET(mpi_errno, MPI_ERR_OTHER, "**spawn"); + } pmi_errcodes = (int *) MPL_calloc(total_num_processes, sizeof(int), MPL_MEM_OTHER); MPIR_Assert(pmi_errcodes); + } else { + /* restore the potential mpi_errno from MPID_Open_port and MPIR_pmi_spawn_multiple */ + mpi_errno = bcast_ints[1]; } - MPIR_ERR_CHKANDJUMP(spawn_error, mpi_errno, MPI_ERR_OTHER, "**spawn"); + MPIR_ERR_CHECK(mpi_errno); int should_accept = 1; if (errcodes != MPI_ERRCODES_IGNORE) { From c6d41a6744855e7d07844811b0c3ac29169308ab Mon Sep 17 00:00:00 2001 From: Hui Zhou Date: Thu, 5 Dec 2024 12:50:55 -0600 Subject: [PATCH 3/4] mpid/bc: use larger MPID_MAX_PORT_NAME Let's expand MPID_MAX_PORT_NAME to be the same as MPID_MAX_BC_SIZE to accommodate larger addresses in MPID_Open_port. --- src/mpid/common/bc/mpidu_bc.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/mpid/common/bc/mpidu_bc.h b/src/mpid/common/bc/mpidu_bc.h index 9650c5f4716..8bf40febade 100644 --- a/src/mpid/common/bc/mpidu_bc.h +++ b/src/mpid/common/bc/mpidu_bc.h @@ -11,8 +11,7 @@ #define MPID_MAX_BC_SIZE 4096 /* Internally we may use a larger port name size than MPI_MAX_PORT_NAME */ -/* FIXME: MPID_MAX_PORT_NAME should be larger than MPID_MAX_BC_SIZE */ -#define MPID_MAX_PORT_NAME 1024 +#define MPID_MAX_PORT_NAME MPID_MAX_BC_SIZE int MPIDU_bc_table_create(int rank, int size, int *nodemap, void *bc, int bc_len, int same_len, int roots_only, void **bc_table, int *ret_bc_len); From 35357eb7ef78f46d3ea76fe2954d6b38a99c446e Mon Sep 17 00:00:00 2001 From: Ken Raffenetti Date: Wed, 11 Dec 2024 14:56:56 -0600 Subject: [PATCH 4/4] version: Update version to 4.3.0rc1 --- maint/version.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maint/version.m4 b/maint/version.m4 index abde0d73b38..92cb96d0d22 100644 --- a/maint/version.m4 +++ b/maint/version.m4 @@ -14,7 +14,7 @@ # changing this by playing with diversions, but then we would probably be # playing with autotools-fire. -m4_define([MPICH_VERSION_m4],[4.3.0b1])dnl +m4_define([MPICH_VERSION_m4],[4.3.0rc1])dnl m4_define([MPICH_RELEASE_DATE_m4],[unreleased development copy])dnl # For libtool ABI versioning rules see: