This is a much saner solution. We [mostly] stayed away from calling exit deep into our libraries, there is no reason to add it now. I'll vote in favor of show_help + return code.
george. On Nov 1, 2011, at 15:14 , Jeff Squyres wrote: > We talked about this on the call today. > > A good suggestion was made: call show_help/opal_finalize/exit only when > OPAL_ENABLE_DEBUG is true. Otherwise, return an error code. > > If no one objects to this, I'll commit this tomorrow. > > > > On Oct 31, 2011, at 4:16 PM, Jeff Squyres wrote: > >> WHAT: what to do if registering an MCA param results in an error? >> >> WHERE: opal/mca/base/mca_base_param.c >> >> WHY: MCA param re-registration issues should be treated as OMPI developer >> errors >> >> WHEN: COB Friday, 4 Nov 2011 >> >> ----------------- >> >> Short version: >> >> Re-registering an MCA param to be a different type (e.g., it was initially >> registered to be a string, but was later re-registered to be an int) should >> be treated as an OMPI developer error, and should opal_finalize()/exit(1). >> >> More details: >> >> A mistaken MCA param re-registration recently caused an orted segv. >> >> The MCA param subsystem was fixed to avoid this segv, but silently convert >> the MCA param to the newly-registered type. Upon reflection and some >> discussion, this seems to be a bad idea. Instead, we should loudly complain >> via a show_help message and then exit(1). >> >> Specifically: this kind of behavior is clearly an error and should be fixed. >> Unfortunately, in most cases, we don't actually check the return value from >> MCA param registration functions, so if we change the MCA param function to >> simply return a non OPAL_SUCCESS status, it's unlikely that anyone will >> notice until some code tries to read the param value, likely still resulting >> in a segv. >> >> Does anyone have heartburn if I change the error behavior to >> opal_finalize()/exit(1)? >> >> -- >> Jeff Squyres >> jsquy...@cisco.com >> For corporate legal information go to: >> http://www.cisco.com/web/about/doing_business/legal/cri/ >> >> >> _______________________________________________ >> devel mailing list >> de...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/devel > > > -- > Jeff Squyres > jsquy...@cisco.com > For corporate legal information go to: > http://www.cisco.com/web/about/doing_business/legal/cri/ > > > _______________________________________________ > devel mailing list > de...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/devel