1
1

Clearout the startup_timeout event if the job did in fact start. Have ORTE_TERMINATE use the job state macro so debug will show where it was called

This commit was SVN r26334.
Этот коммит содержится в:
Ralph Castain 2012-04-25 01:05:17 +00:00
родитель a753fe91f7
Коммит 71805bf7e4
2 изменённых файлов: 8 добавлений и 6 удалений

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

@ -306,12 +306,15 @@ void orte_plm_base_complete_setup(int fd, short args, void *cbdata)
static void timer_cb(int fd, short event, void *cbdata)
{
orte_timer_t *tm = (orte_timer_t*)cbdata;
orte_job_t *jdata = (orte_job_t*)tm->payload;
if (NULL == jdata || jdata->state < ORTE_JOB_STATE_RUNNING) {
/* declare launch failed */
ORTE_ACTIVATE_JOB_STATE(jdata, ORTE_JOB_STATE_FAILED_TO_START);
}
/* free event */
OBJ_RELEASE(tm);
/* declare launch failed */
ORTE_ACTIVATE_JOB_STATE(NULL, ORTE_JOB_STATE_FAILED_TO_START);
}
void orte_plm_base_launch_apps(int fd, short args, void *cbdata)
@ -373,7 +376,7 @@ void orte_plm_base_launch_apps(int fd, short args, void *cbdata)
* defined time, then we know things have failed
*/
if (0 < orte_startup_timeout) {
ORTE_DETECT_TIMEOUT(orte_startup_timeout, 1000, 10000000, timer_cb, NULL);
ORTE_DETECT_TIMEOUT(orte_startup_timeout, 1000, 10000000, timer_cb, jdata);
}
/* cleanup */

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

@ -65,8 +65,7 @@ ORTE_DECLSPEC extern int orte_state_base_output;
#define ORTE_TERMINATE(x) \
do { \
ORTE_UPDATE_EXIT_STATUS(x); \
orte_state.activate_job_state(NULL, \
ORTE_JOB_STATE_FORCED_EXIT); \
ORTE_ACTIVATE_JOB_STATE(NULL, ORTE_JOB_STATE_FORCED_EXIT); \
} while(0);
#define ORTE_ACTIVATE_JOB_STATE(j, s) \