- 3/4 commit for Windows Visual Studio and CCP support:
corrections to non-windows files (but within ifdef __WINDOWS__) type casts, event library for windows use win32. in orte runtime, add windows sockets handling and object construction. This commit was SVN r20110.
Этот коммит содержится в:
родитель
8673f19f50
Коммит
20cea164db
@ -99,7 +99,7 @@ static inline int memchecker_call (int (*f)(void *, size_t), void * addr,
|
||||
uint32_t stack_disp = 0, elem_pos = 0, i;
|
||||
dt_elem_desc_t* description = datatype->opt_desc.desc;
|
||||
dt_elem_desc_t* pElem = &(description[elem_pos]);
|
||||
unsigned char *source_base = addr;
|
||||
unsigned char *source_base = (unsigned char *) addr;
|
||||
|
||||
if ( NULL != datatype )
|
||||
stack_disp = datatype->ub - datatype->lb;
|
||||
|
@ -685,7 +685,9 @@ int ompi_mpi_init(int argc, char **argv, int requested, int *provided)
|
||||
}
|
||||
|
||||
/* Do we need to wait for a debugger? */
|
||||
#ifndef __WINDOWS__
|
||||
ompi_wait_for_debugger();
|
||||
#endif
|
||||
|
||||
/* check for timing request - get stop time and report elapsed
|
||||
time if so, then start the clock again */
|
||||
|
@ -310,7 +310,11 @@ opal_event_init(void)
|
||||
#ifdef __APPLE__
|
||||
"select",
|
||||
#else
|
||||
# ifdef __WINDOWS__
|
||||
"win32",
|
||||
# else
|
||||
"poll",
|
||||
# endif
|
||||
#endif
|
||||
&event_module_include);
|
||||
free(help_msg); /* release the help message */
|
||||
|
@ -903,7 +903,7 @@ void orte_trigger_event(orte_trigger_event_t *trig)
|
||||
return;
|
||||
}
|
||||
|
||||
send(trig->channel, (const char *) &data, sizeof(int), 0);
|
||||
send(trig->channel, (const char*)&data, sizeof(int), 0);
|
||||
closesocket(trig->channel);
|
||||
opal_progress();
|
||||
}
|
||||
@ -1118,6 +1118,9 @@ int orte_wait_event(opal_event_t **event, orte_trigger_event_t *trig,
|
||||
/* create the event */
|
||||
*event = (opal_event_t*)malloc(sizeof(opal_event_t));
|
||||
|
||||
/* setup the trigger and its associated lock */
|
||||
OBJ_CONSTRUCT(trig, orte_trigger_event_t);
|
||||
|
||||
/* pass back the write end of the pipe */
|
||||
trig->channel = p[1];
|
||||
|
||||
|
@ -782,8 +782,15 @@ static void job_completed(int trigpipe, short event, void *arg)
|
||||
orte_max_timeout, timeout_callback);
|
||||
}
|
||||
|
||||
#ifndef __WINDOWS__
|
||||
/* now wait to hear it has been done */
|
||||
opal_event_dispatch();
|
||||
#else
|
||||
/* We are using WT_EXECUTEINWAITTHREAD mode of threading pool,
|
||||
the other callbacks won't be triggerred until this thread finishes,
|
||||
so just return to main thread and process the rest events there. */
|
||||
return;
|
||||
#endif
|
||||
|
||||
/* if we cannot order the daemons to terminate, then
|
||||
* all we can do is cleanly exit ourselves
|
||||
|
@ -257,7 +257,7 @@ int orte_list_local_hnps(opal_list_t *hnps, bool connect)
|
||||
* See if a contact file exists in this directory and read it
|
||||
*/
|
||||
contact_filename = opal_os_path( false, headdir,
|
||||
dir_entry->d_name, "contact.txt", NULL );
|
||||
file_data, "contact.txt", NULL );
|
||||
|
||||
hnp = OBJ_NEW(orte_hnp_contact_t);
|
||||
if (ORTE_SUCCESS == (ret = orte_read_hnp_contact_file(contact_filename, hnp, connect))) {
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user