diff --git a/src/mpi/proc/proc.c b/src/mpi/proc/proc.c index 0004c2c4df..c2094bf02f 100644 --- a/src/mpi/proc/proc.c +++ b/src/mpi/proc/proc.c @@ -28,9 +28,10 @@ void lam_proc_construct(lam_proc_t* proc) lam_mutex_init(&lam_proc_lock); } - proc->proc_job = 0; + proc->proc_job = NULL; proc->proc_vpid = 0; - proc->proc_pml = 0; + proc->proc_pml = NULL; + proc->proc_modex = NULL; THREAD_LOCK(&lam_proc_lock); lam_list_append(&lam_proc_list, (lam_list_item_t*)proc); @@ -75,7 +76,7 @@ int lam_proc_init(void) lam_proc_t *proc = OBJ_NEW(lam_proc_t); proc->proc_job = strdup(job); proc->proc_vpid = vpid; - if(proc->proc_vpid == vpid && strcmp(proc->proc_job, job)) + if(proc->proc_vpid == vpid && strcmp(proc->proc_job, job) == 0) lam_proc_local_proc = proc; } free(procs); diff --git a/src/mpi/proc/proc.h b/src/mpi/proc/proc.h index b30d70c95c..f3d5cb4698 100644 --- a/src/mpi/proc/proc.h +++ b/src/mpi/proc/proc.h @@ -13,10 +13,11 @@ extern lam_class_t lam_proc_t_class; struct lam_proc_t { - lam_list_item_t super; /* allow proc to be placed on a list */ - lam_job_handle_t proc_job; /* identifies a unique job */ - uint32_t proc_vpid; /* process identifier w/in the job */ - struct mca_pml_proc_t* proc_pml; /* PML specific proc data */ + lam_list_item_t super; /* allow proc to be placed on a list */ + lam_job_handle_t proc_job; /* identifies a unique job */ + uint32_t proc_vpid; /* process identifier w/in the job */ + struct mca_pml_proc_t* proc_pml; /* PML specific proc data */ + struct mca_base_modex_t* proc_modex; /* MCA module exchange data */ /* JMS: need to have the following information: