fix corrupted verbose output in oshmem
set yoda prio lower than ikrit fix anon unions in ikrit Refs trac:3763 This commit was SVN r29976. The following Trac tickets were found above: Ticket 3763 --> https://svn.open-mpi.org/trac/ompi/ticket/3763
Этот коммит содержится в:
родитель
9b32dacb6c
Коммит
d70f93b2dc
@ -58,10 +58,10 @@ static int spml_ikrit_get_ep_address(spml_ikrit_mxm_ep_conn_info_t *ep_info,
|
||||
size_t addrlen;
|
||||
mxm_error_t err;
|
||||
|
||||
addrlen = sizeof(ep_info->ptl_addr[ptlid]);
|
||||
addrlen = sizeof(ep_info->addr.ptl_addr[ptlid]);
|
||||
err = mxm_ep_address(mca_spml_ikrit.mxm_ep,
|
||||
ptlid,
|
||||
(struct sockaddr *) &ep_info->ptl_addr[ptlid],
|
||||
(struct sockaddr *) &ep_info->addr.ptl_addr[ptlid],
|
||||
&addrlen);
|
||||
if (MXM_OK != err) {
|
||||
orte_show_help("help-spml-ikrit.txt",
|
||||
@ -411,7 +411,7 @@ int mca_spml_ikrit_add_procs(oshmem_proc_t** procs, size_t nprocs)
|
||||
return OSHMEM_ERROR;
|
||||
}
|
||||
#else
|
||||
err = mxm_ep_get_address(mca_spml_ikrit.mxm_ep, ep_info[my_rank].ep_addr, &mxm_addr_len);
|
||||
err = mxm_ep_get_address(mca_spml_ikrit.mxm_ep, ep_info[my_rank].addr.ep_addr, &mxm_addr_len);
|
||||
if (MXM_OK != err) {
|
||||
orte_show_help("help-shmem-spml-ikrit.txt", "unable to get endpoint address", true,
|
||||
mxm_error_string(err));
|
||||
@ -436,12 +436,12 @@ int mca_spml_ikrit_add_procs(oshmem_proc_t** procs, size_t nprocs)
|
||||
|
||||
#if MXM_API < MXM_VERSION(2,0)
|
||||
conn_reqs[i].ptl_addr[MXM_PTL_SELF] =
|
||||
(struct sockaddr *) &ep_info[i].ptl_addr[MXM_PTL_SELF];
|
||||
(struct sockaddr *) &ep_info[i].addr.ptl_addr[MXM_PTL_SELF];
|
||||
conn_reqs[i].ptl_addr[MXM_PTL_SHM] = NULL;
|
||||
conn_reqs[i].ptl_addr[MXM_PTL_RDMA] =
|
||||
(struct sockaddr *) &ep_info[i].ptl_addr[MXM_PTL_RDMA];
|
||||
(struct sockaddr *) &ep_info[i].addr.ptl_addr[MXM_PTL_RDMA];
|
||||
#else
|
||||
err = mxm_ep_connect(mca_spml_ikrit.mxm_ep, ep_info[i].ep_addr, &mca_spml_ikrit.mxm_peers[i]->mxm_conn);
|
||||
err = mxm_ep_connect(mca_spml_ikrit.mxm_ep, ep_info[i].addr.ep_addr, &mca_spml_ikrit.mxm_peers[i]->mxm_conn);
|
||||
if (MXM_OK != err) {
|
||||
SPML_ERROR("MXM returned connect error: %s\n", mxm_error_string(err));
|
||||
goto bail;
|
||||
@ -1096,7 +1096,7 @@ static inline int mca_spml_ikrit_put_internal(void* dst_addr,
|
||||
if (MXM_OK != put_req->mxm_req.base.error) {
|
||||
OPAL_THREAD_ADD32(&mca_spml_ikrit.n_active_puts, -1);
|
||||
SPML_ERROR("put request %p failed: %s - aborting",
|
||||
put_req, mxm_error_string(put_req->mxm_req.base.error));
|
||||
(void*)put_req, mxm_error_string(put_req->mxm_req.base.error));
|
||||
oshmem_shmem_abort(-1);
|
||||
return OSHMEM_ERROR;
|
||||
}
|
||||
|
@ -108,7 +108,7 @@ typedef struct spml_ikrit_mxm_ep_conn_info_t {
|
||||
union {
|
||||
struct sockaddr_storage ptl_addr[MXM_PTL_LAST];
|
||||
char ep_addr[MXM_MAX_ADDR_LEN];
|
||||
};
|
||||
} addr;
|
||||
} spml_ikrit_mxm_ep_conn_info_t;
|
||||
|
||||
extern mca_spml_ikrit_t mca_spml_ikrit;
|
||||
|
@ -81,7 +81,7 @@ static int mca_spml_yoda_component_register(void)
|
||||
mca_spml_yoda_param_register_int("free_list_inc", 16, 0);
|
||||
mca_spml_yoda.priority =
|
||||
mca_spml_yoda_param_register_int("priority",
|
||||
20,
|
||||
10,
|
||||
"[integer] yoda priority");
|
||||
return OSHMEM_SUCCESS;
|
||||
}
|
||||
|
@ -127,10 +127,23 @@ int oshmem_shmem_abort(int errcode)
|
||||
void oshmem_output_verbose(int level, int output_id, const char* prefix, const char* file, int line, const char* function, const char* format, ...)
|
||||
{
|
||||
va_list args;
|
||||
char *buffer;
|
||||
char *buff, *str;
|
||||
int ret = 0;
|
||||
|
||||
UNREFERENCED_PARAMETER(ret);
|
||||
|
||||
va_start(args, format);
|
||||
asprintf(&buffer, "%s %s", prefix, format);
|
||||
opal_output_verbose(level, output_id, buffer, file, line, function, args);
|
||||
|
||||
ret = vasprintf(&str, format, args);
|
||||
assert(-1 != ret);
|
||||
|
||||
ret = asprintf(&buff, "%s %s", prefix, str);
|
||||
assert(-1 != ret);
|
||||
|
||||
opal_output_verbose(level, output_id, buff, file, line, function);
|
||||
|
||||
va_end(args);
|
||||
free(buffer);
|
||||
|
||||
free(buff);
|
||||
free(str);
|
||||
}
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user