Fix r32460 race condition resolution when procs call MPI_Abort.
do not invoke orte_session_dir_finalize(...) so orte_ess_base_app_abort(...) can successfully createi <orte_process_info.proc_session_dir>/aborted cmr=v1.8.2:reviewer=rhc This commit was SVN r32498. The following SVN revision numbers were found above: r32460 --> open-mpi/ompi@abedb97be4
Этот коммит содержится в:
родитель
22cb8a1834
Коммит
a873f45a90
@ -14,6 +14,8 @@
|
||||
* Copyright (c) 2011-2013 Los Alamos National Security, LLC.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2013-2014 Intel, Inc. All rights reserved
|
||||
* Copyright (c) 2014 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -214,9 +216,6 @@ void orte_errmgr_base_abort(int error_code, char *fmt, ...)
|
||||
orte_odls.kill_local_procs(NULL);
|
||||
/* whack any session directories */
|
||||
orte_session_dir_cleanup(ORTE_JOBID_WILDCARD);
|
||||
} else {
|
||||
/* cleanup my session directory */
|
||||
orte_session_dir_finalize(ORTE_PROC_MY_NAME);
|
||||
}
|
||||
|
||||
/* if a critical connection failed, or a sensor limit was exceeded, exit without dropping a core */
|
||||
|
@ -13,6 +13,8 @@
|
||||
* Copyright (c) 2011-2013 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2013-2014 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2014 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -469,7 +471,11 @@ void orte_ess_base_app_abort(int status, bool report)
|
||||
if (report && orte_routing_is_enabled && orte_create_session_dirs) {
|
||||
myfile = opal_os_path(false, orte_process_info.proc_session_dir, "aborted", NULL);
|
||||
fd = open(myfile, O_CREAT, S_IRUSR);
|
||||
close(fd);
|
||||
/* FIXME if file creation fails, it is likely orte_process_info.proc_session_dir
|
||||
* has been previously deleted */
|
||||
if (fd >= 0) {
|
||||
close(fd);
|
||||
}
|
||||
/* now introduce a short delay to allow any pending
|
||||
* messages (e.g., from a call to "show_help") to
|
||||
* have a chance to be sent */
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user