|
28 | 28 | #include "ompi/mca/vprotocol/base/base.h"
|
29 | 29 | #include "pml_v_output.h"
|
30 | 30 | #include "pml_v.h"
|
| 31 | +#include "ompi/runtime/mpiruntime.h" |
31 | 32 |
|
32 | 33 | static int mca_pml_v_component_register(void);
|
33 | 34 | static int mca_pml_v_component_open(void);
|
@@ -61,9 +62,6 @@ mca_pml_base_component_2_0_0_t mca_pml_v_component =
|
61 | 62 | .pmlm_finalize = mca_pml_v_component_finalize,
|
62 | 63 | };
|
63 | 64 |
|
64 |
| -static bool pml_v_enable_progress_treads = OPAL_ENABLE_PROGRESS_THREADS; |
65 |
| -static bool pml_v_enable_mpi_thread_multiple = 1; |
66 |
| - |
67 | 65 | static char *ompi_pml_vprotocol_include_list;
|
68 | 66 | static char *ompi_pml_v_output;
|
69 | 67 | static int ompi_pml_v_verbose;
|
@@ -205,17 +203,19 @@ static int mca_pml_v_component_parasite_close(void)
|
205 | 203 |
|
206 | 204 |
|
207 | 205 | /*******************************************************************************
|
208 |
| - * Init/finalize for MCA PML components |
| 206 | + * The init function for the V PML is never supposed to be called, as the mechanism |
| 207 | + * that enables the PML V to work require a real PML to move data across. Thus, a |
| 208 | + * normal PML should be selected (so the PML V cannot be in the MCA list of PMLs) |
| 209 | + * and if the PML V is enabled (via the activation of a vprotocol) it will insert |
| 210 | + * itself before the selected PML (assuming no DIRECT_call PML). |
209 | 211 | */
|
210 |
| -static mca_pml_base_module_t *mca_pml_v_component_init(int *priority, |
211 |
| - bool enable_progress_threads, |
212 |
| - bool enable_mpi_thread_multiple) |
| 212 | +static mca_pml_base_module_t* |
| 213 | +mca_pml_v_component_init(int *priority, |
| 214 | + bool enable_progress_threads, |
| 215 | + bool enable_mpi_thread_multiple) |
213 | 216 | {
|
214 | 217 | V_OUTPUT_VERBOSE(1, "init: I'm not supposed to be here until BTL loading stuff gets fixed!? That's strange...");
|
215 | 218 |
|
216 |
| - pml_v_enable_progress_treads = enable_progress_threads; |
217 |
| - pml_v_enable_mpi_thread_multiple = enable_mpi_thread_multiple; |
218 |
| - |
219 | 219 | /* I NEVER want to be the selected PML, so I report less than possible
|
220 | 220 | * priority and a NULL module
|
221 | 221 | */
|
@@ -249,8 +249,8 @@ static int mca_pml_v_enable(bool enable)
|
249 | 249 | if(enable) {
|
250 | 250 | /* Check if a protocol have been selected during init */
|
251 | 251 | if(! mca_vprotocol_base_selected())
|
252 |
| - mca_vprotocol_base_select(pml_v_enable_progress_treads, |
253 |
| - pml_v_enable_mpi_thread_multiple); |
| 252 | + mca_vprotocol_base_select(OPAL_ENABLE_PROGRESS_THREADS, |
| 253 | + ompi_mpi_thread_multiple); |
254 | 254 |
|
255 | 255 | /* Check if we succeeded selecting a protocol */
|
256 | 256 | if(mca_vprotocol_base_selected()) {
|
|
0 commit comments