Unfortunately, this doesn't fully fix the problem -- I'm still getting
bad frees:
[16:47] svbu-mpi:~/mpi % ./hello
stdout: Hello, world! I am 0 of 1 (svbu-mpi.cisco.com)
stderr: Hello, world! I am 0 of 1 (svbu-mpi.cisco.com)
malloc debug: Invalid free (min_heap.h, 58)
[16:48] svbu-mpi:~/mpi % mpirun -np 1 hello
[svbu-mpi001:27549] ********** Parsing receive_queues
stdout: Hello, world! I am 0 of 1 (svbu-mpi001)
stderr: Hello, world! I am 0 of 1 (svbu-mpi001)
malloc debug: Invalid free (min_heap.h, 58)
On Feb 16, 2009, at 7:20 PM, bosi...@osl.iu.edu wrote:
Author: bosilca
Date: 2009-02-16 19:20:05 EST (Mon, 16 Feb 2009)
New Revision: 20568
URL: https://svn.open-mpi.org/trac/ompi/changeset/20568
Log:
Make sure we correctly unregister all persistent events
and signal handlers.
Text files modified:
trunk/orte/orted/orted_main.c | 8 ++++++++
trunk/orte/runtime/orte_wait.c | 4 ++--
2 files changed, 10 insertions(+), 2 deletions(-)
Modified: trunk/orte/orted/orted_main.c
=
=
=
=
=
=
=
=
======================================================================
--- trunk/orte/orted/orted_main.c (original)
+++ trunk/orte/orted/orted_main.c 2009-02-16 19:20:05 EST (Mon, 16
Feb 2009)
@@ -754,6 +754,14 @@
exit(ORTE_ERROR_DEFAULT_EXIT_CODE);
}
+ /* Release all local signal handlers */
+ opal_event_del(&term_handler);
+ opal_event_del(&int_handler);
+#ifndef __WINDOWS__
+ opal_signal_del(&sigusr1_handler);
+ opal_signal_del(&sigusr2_handler);
+#endif /* __WINDOWS__ */
+
/* Finalize and clean up ourselves */
ret = orte_finalize();
exit(ret);
Modified: trunk/orte/runtime/orte_wait.c
=
=
=
=
=
=
=
=
======================================================================
--- trunk/orte/runtime/orte_wait.c (original)
+++ trunk/orte/runtime/orte_wait.c 2009-02-16 19:20:05 EST (Mon, 16
Feb 2009)
@@ -517,8 +517,8 @@
/* define the event to fire when someone writes to the pipe */
opal_event_set(*event, p[0], OPAL_EV_READ, cbfunc, NULL);
- /* Add it to the active events, without a timeout */
- opal_event_add(*event, NULL);
+ /* Add it to the active events, without a timeout */
+ opal_event_add(*event, NULL);
/* all done */
return ORTE_SUCCESS;
_______________________________________________
svn-full mailing list
svn-f...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/svn-full
--
Jeff Squyres
Cisco Systems