Here is a quick question regarding the topi framework.
- The mca_topo_base_output is opened unconditionally in topo_base_open.c:62
- with your patch, mca_topo_base_output is closed conditionally in topo_base_close.c:46, but only in case mca_topo_base_components_opened_valid and mca_topo_base_components_available_valid are NULL. However, mca_topo_base_output is set to -1 in all cases right after.
Why is that so?
In fact I think the mca_topo_base_close is entirely wrong. It should close all mca_topo_base_components_opened_valid component, then all mca_topo_base_components_available_valid components and then close the mca_topo_base_output and set it to -1.
On Nov 1, 2012, at 15:44 , Nathan Hjelm <hjelmn_at_[hidden]> wrote:
> What: On close some frameworks either:
> 1) close their output twice (calling both opal_output_close and mca_base_components_close), or
> 2) don't close their output.
> This patch ensures that all frameworks that call opal_output_open have exactly one call to either opal_output_close OR mca_base_components_close.
> Why: I am working on cleaning up the MCA system in preparation for adding support for MPI_T_cvar_write. I came across this potential problem and figured it should probably be fixed.
> When: Since this patch shouldn't take long to review I am setting a very short timeout: tomorrow (Nov 2), 12:00pm MDT.
> Questions? Comments?
> -Nathan Hjelm
> HPC-3, LANL
> devel mailing list