openmpi  3.1.6
About: Open MPI is a high performance Message Passing Interface (MPI) library project combining technologies and resources from several other projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best MPI library available. 3.x series.
  Fossies Dox: openmpi-3.1.6.tar.bz2  ("unofficial" and yet experimental doxygen-generated source code documentation)  

show_help.c File Reference
#include "orte_config.h"
#include "orte/types.h"
#include "orte/constants.h"
#include <stdio.h>
#include <string.h>
#include <time.h>
#include "opal/util/show_help.h"
#include "opal/util/output.h"
#include "opal/dss/dss.h"
#include "opal/mca/event/event.h"
#include "opal/mca/pmix/pmix.h"
#include "orte/mca/errmgr/errmgr.h"
#include "orte/mca/rml/rml.h"
#include "orte/mca/rml/rml_types.h"
#include "orte/mca/routed/routed.h"
#include "orte/util/name_fns.h"
#include "orte/util/proc_info.h"
#include "orte/runtime/orte_globals.h"
#include "orte/util/show_help.h"
Include dependency graph for show_help.c:

Go to the source code of this file.

Data Structures

struct  tuple_list_item_t
 

Functions

bool orte_show_help_is_available (void)
 Allow other parts of the code base to know if the ORTE show_help system is available or not (does not necessarily indicate that aggregating is available; on no-ORTE systems, ORTE show_help is available, but aggregating is not). More...
 
static void tuple_list_item_constructor (tuple_list_item_t *obj)
 
static void tuple_list_item_destructor (tuple_list_item_t *obj)
 
static OBJ_CLASS_INSTANCE (tuple_list_item_t, opal_list_item_t, tuple_list_item_constructor, tuple_list_item_destructor)
 
static char * xml_format (unsigned char *input)
 
static int match (const char *a, const char *b)
 
static int get_tli (const char *filename, const char *topic, tuple_list_item_t **tli)
 
static void show_accumulated_duplicates (int fd, short event, void *context)
 
static int show_help (const char *filename, const char *topic, const char *output, orte_process_name_t *sender)
 
void orte_show_help_recv (int status, orte_process_name_t *sender, opal_buffer_t *buffer, orte_rml_tag_t tag, void *cbdata)
 
int orte_show_help_init (void)
 Initializes the output stream system and opens a default "verbose" stream. More...
 
void orte_show_help_finalize (void)
 Shut down the output stream system. More...
 
int orte_show_help (const char *filename, const char *topic, bool want_error_header,...)
 Show help. More...
 
static void cbfunc (int status, void *cbdata)
 
int orte_show_help_norender (const char *filename, const char *topic, bool want_error_header, const char *output)
 Exactly the same as orte_show_help, but pass in a rendered string, rather than a varargs list which must be rendered. More...
 
int orte_show_help_suppress (const char *filename, const char *topic)
 Pretend that this message has already been shown. More...
 

Variables

bool orte_help_want_aggregate = false
 
static int orte_help_output
 
static bool ready = false
 
static opal_list_t abd_tuples
 
static struct timeval show_help_interval = { 5, 0 }
 
static time_t show_help_time_last_displayed = 0
 
static bool show_help_timer_set = false
 
static opal_event_t show_help_timer_event
 
static opal_show_help_fn_t save_help = NULL
 

Function Documentation

◆ cbfunc()

static void cbfunc ( int  status,
void *  cbdata 
)
static

Definition at line 619 of file show_help.c.

References active.

Referenced by _release_fn(), _satisfy_request(), cray_fencenb(), create_local_tracker(), deregister_handler(), dfs_close(), dfs_get_file_map(), dfs_get_file_size(), dfs_load_file_maps(), dfs_open(), dfs_post_file_map(), dfs_purge_file_maps(), dfs_read(), dfs_seek(), evhandler(), isolated_fence_nb(), mca_bml_base_get(), mca_bml_base_put(), mca_bml_r2_register(), mca_bml_r2_register_error(), mca_btl_openib_get(), mca_btl_openib_put(), mca_btl_openib_register_error_cb(), mca_btl_portals4_get(), mca_btl_scif_get(), mca_btl_scif_put(), mca_btl_self_get(), mca_btl_self_put(), mca_btl_smcuda_component_progress(), mca_btl_smcuda_register_error_cb(), mca_btl_tcp_get(), mca_btl_tcp_put(), mca_btl_ugni_acswap(), mca_btl_ugni_afop(), mca_btl_ugni_alloc_post_descriptor(), mca_btl_ugni_aop(), mca_btl_ugni_get(), mca_btl_ugni_post(), mca_btl_ugni_post_bte(), mca_btl_ugni_post_cqwrite(), mca_btl_ugni_post_fma(), mca_btl_ugni_put(), model_callback(), notification_fn(), notify_cbfunc(), notify_event(), notify_server_of_event(), ompi_errhandler_callback(), ompi_osc_rdma_btl_fop(), ompi_osc_rdma_btl_op(), ompi_osc_rdma_put_contig(), opal_os_dirpath_destroy(), opal_pmix_base_deregister_handler(), opal_pmix_base_evhandler(), opal_pmix_base_register_handler(), orte_filem_base_none_preposition_files(), orte_grpcomm_API_allgather(), orte_rml_API_recv_buffer_nb(), orte_rml_API_recv_nb(), orte_rml_API_send_buffer_nb(), orte_rml_API_send_nb(), orte_rml_oob_send_buffer_nb(), orte_rml_oob_send_nb(), orte_show_help_norender(), orte_state_base_add_job_state(), orte_state_base_add_proc_state(), orte_state_base_set_job_state_callback(), orte_state_base_set_proc_state_callback(), pmix1_connectnb(), pmix1_disconnectnb(), pmix1_fencenb(), pmix1_getnb(), pmix1_lookupnb(), pmix1_publishnb(), pmix1_server_dmodex(), pmix1_server_notify_error(), pmix1_server_register_client(), pmix1_server_register_nspace(), pmix1_spawnnb(), pmix1_unpublishnb(), pmix2x_connectnb(), pmix2x_disconnectnb(), pmix2x_event_hdlr(), pmix2x_fencenb(), pmix2x_getnb(), pmix2x_job_control(), pmix2x_log(), pmix2x_lookupnb(), pmix2x_publishnb(), pmix2x_query(), pmix2x_server_deregister_client(), pmix2x_server_deregister_nspace(), pmix2x_server_dmodex(), pmix2x_server_notify_event(), pmix2x_server_register_nspace(), pmix2x_spawnnb(), pmix2x_unpublishnb(), PMIx_Allocation_request_nb(), PMIx_Connect_nb(), PMIx_Deregister_event_handler(), PMIx_Disconnect_nb(), PMIx_Fence_nb(), PMIx_Get_nb(), PMIx_Job_control_nb(), PMIx_Log_nb(), PMIx_Lookup_nb(), PMIx_Notify_event(), PMIx_Process_monitor_nb(), pmix_ptl_base_register_recv(), pmix_ptl_base_set_notification_cbfunc(), PMIx_Publish_nb(), PMIx_Query_info_nb(), PMIx_Register_event_handler(), pmix_rte_init(), pmix_server_abort(), pmix_server_abort_fn(), pmix_server_alloc(), pmix_server_client_connected_fn(), pmix_server_client_finalized_fn(), pmix_server_connect(), pmix_server_connect_fn(), PMIx_server_deregister_client(), pmix_server_deregister_events_fn(), PMIx_server_deregister_nspace(), pmix_server_disconnect(), pmix_server_disconnect_fn(), pmix_server_dmodex_req_fn(), PMIx_server_dmodex_request(), pmix_server_event_recvd_from_client(), pmix_server_fencenb_fn(), pmix_server_get(), pmix_server_job_ctrl(), pmix_server_log(), pmix_server_log_fn(), pmix_server_lookup(), pmix_server_lookup_fn(), pmix_server_monitor(), pmix_server_notify_client_of_event(), pmix_server_notify_event(), pmix_server_publish(), pmix_server_publish_fn(), pmix_server_query(), pmix_server_query_fn(), PMIx_server_register_client(), pmix_server_register_events(), pmix_server_register_events_fn(), PMIx_server_register_nspace(), PMIx_server_setup_application(), PMIx_server_setup_local_support(), pmix_server_spawn(), pmix_server_spawn_fn(), pmix_server_unpublish(), pmix_server_unpublish_fn(), PMIx_Spawn_nb(), pmix_tool_connected_fn(), PMIx_Unpublish_nb(), progress_local_event_hdlr(), raw_preposition_files(), register_handler(), return_local_event_hdlr(), s1_fencenb(), s2_fencenb(), send_recv(), server_abort_fn(), server_allocate(), server_client_connected_fn(), server_client_finalized_fn(), server_connect_fn(), server_disconnect_fn(), server_dmodex_req_fn(), server_fencenb_fn(), server_job_control(), server_listener_fn(), server_log(), server_lookup_fn(), server_notify_event(), server_publish_fn(), server_query(), server_register_events(), server_spawn_fn(), server_tool_connection(), server_unpublish_fn(), setup_sighandler(), usnic_register_pml_err_cb(), and vader_register_error_cb().

◆ get_tli()

static int get_tli ( const char *  filename,
const char *  topic,
tuple_list_item_t **  tli 
)
static

◆ match()

◆ OBJ_CLASS_INSTANCE()

◆ orte_show_help()

int orte_show_help ( const char *  filename,
const char *  topic,
bool  want_error_header,
  ... 
)

Show help.

Sends show help messages to the HNP if on a backend node. Note that aggregation is not currently supported on HNP-less systems (e.g., cray).

Definition at line 593 of file show_help.c.

References filename, free(), NULL, opal_show_help_vstring(), orte_execute_quiet, orte_show_help_norender(), ORTE_SUCCESS, and output.

Referenced by _shmem_init(), allocate(), assign_locations(), bind_downwards(), bind_in_place(), bind_to_cpuset(), bind_upwards(), byobj_span(), check_modifiers(), check_mxm_hw_tls(), check_mxm_tls(), component_available(), component_query(), connection_event_handler(), construct_ftgrps(), create_app(), default_hnp_abort(), discover(), dmodex_req(), do_parent(), eviction_cbfunc(), execute(), fork_hnp(), hnp_abort(), hostfile_parse(), hostfile_parse_error(), hostfile_parse_line(), init(), init_server(), job_errors(), launch_daemons(), listen_thread(), listen_thread_fn(), main(), map_to_ftgrps(), mca_coll_cuda_module_enable(), mca_coll_sync_module_enable(), mca_oob_ud_alloc_reg_mem(), mca_oob_ud_component_startup(), mca_oob_ud_port_recv_start(), mca_oob_ud_qp_destructor(), mca_oob_ud_qp_init(), mca_oob_ud_qp_post_recv(), mca_oob_ud_qp_post_send(), mca_oob_ud_qp_process_send_completions(), mca_oob_ud_qp_to_reset(), mca_oob_ud_qp_to_rts(), mca_oob_ud_recv_try(), mca_oob_ud_register_buf(), mca_oob_ud_register_iov(), mca_spml_ikrit_add_procs(), mca_spml_ikrit_component_open(), mindist_map(), nidmap_create(), ompi_rte_connect_accept_support(), orte_daemon(), orte_ess_base_app_setup(), orte_ess_base_orted_setup(), orte_ess_base_proc_binding(), orte_ess_base_std_prolog(), orte_ess_base_tool_setup(), orte_info_do_params(), orte_info_do_path(), orte_init(), orte_odls_base_default_launch_local(), orte_odls_base_open(), orte_odls_base_spawn_proc(), orte_oob_base_select(), orte_plm_base_daemon_callback(), orte_plm_base_orted_append_basic_args(), orte_plm_base_setup_virtual_machine(), orte_print_aborted_job(), orte_ras_alps_allocate(), orte_ras_base_allocate(), orte_ras_gridengine_allocate(), orte_ras_slurm_allocate(), orte_ras_slurm_discover(), orte_regx_base_extract_node_names(), orte_rmaps_base_assign_locations(), orte_rmaps_base_compute_bindings(), orte_rmaps_base_filter_nodes(), orte_rmaps_base_get_target_nodes(), orte_rmaps_base_map_job(), orte_rmaps_base_open(), orte_rmaps_base_set_mapping_policy(), orte_rmaps_base_set_ranking_policy(), orte_rmaps_rank_file_open(), orte_rmaps_rank_file_parse(), orte_rmaps_rf_map(), orte_rmaps_rr_assign_byobj(), orte_rmaps_rr_assign_locations(), orte_rmaps_rr_bynode(), orte_rmaps_rr_byobj(), orte_rmaps_rr_byslot(), orte_rmaps_rr_map(), orte_rmaps_seq_map(), orte_session_setup_base(), orte_show_help_init(), orte_state_base_check_all_complete(), orte_submit_init(), orte_submit_job(), orte_timeout_wakeup(), orte_util_add_dash_host_nodes(), orte_util_add_hostfile_nodes(), orte_util_filter_dash_host_nodes(), orte_util_filter_hostfile_nodes(), orte_util_get_ordered_host_list(), orted_abort(), oshmem_info_init(), oshmem_shmem_abort(), parse_appfile(), parse_args(), parse_cli(), parse_dash_host(), parse_env(), parse_globals(), plm_slurm_start_proc(), pmix_server_dmdx_recv(), pmix_server_spawn_fn(), ppr_mapper(), proc_errors(), process(), process_opens(), read_ip_port(), recv_data(), rsh_component_open(), rsh_component_query(), rte_init(), run_debugger(), setup_debugger_job(), setup_launch(), setup_signals(), snapc_full_local_start_checkpoint_all(), snapc_full_local_start_ckpt_handshake(), snapc_full_local_start_ckpt_open_comm(), spawn(), split_and_resolve(), spml_ikrit_mxm_init(), spml_ikrit_progress(), tcp_component_register(), and timeout().

◆ orte_show_help_finalize()

void orte_show_help_finalize ( void  )

◆ orte_show_help_init()

int orte_show_help_init ( void  )

Initializes the output stream system and opens a default "verbose" stream.

Return values
successUpon success.
errorUpon failure.

This should be the first function invoked in the output subsystem. After this call, the default "verbose" stream is open and can be written to via calls to orte_output_verbose() and orte_output_error().

By definition, the default verbose stream has a handle ID of 0, and has a verbose level of 0.

Definition at line 541 of file show_help.c.

References abd_tuples, opal_output_stream_t::lds_want_stderr, OBJ_CONSTRUCT, OBJ_DESTRUCT, opal_output_open(), OPAL_OUTPUT_VERBOSE, opal_show_help, orte_debug_output, orte_help_output, orte_show_help(), ORTE_SUCCESS, ready, and save_help.

Referenced by orte_init().

◆ orte_show_help_is_available()

bool orte_show_help_is_available ( void  )

Allow other parts of the code base to know if the ORTE show_help system is available or not (does not necessarily indicate that aggregating is available; on no-ORTE systems, ORTE show_help is available, but aggregating is not).

Definition at line 59 of file show_help.c.

References ready.

Referenced by oshmem_shmem_abort().

◆ orte_show_help_norender()

◆ orte_show_help_recv()

void orte_show_help_recv ( int  status,
orte_process_name_t sender,
opal_buffer_t buffer,
orte_rml_tag_t  tag,
void *  cbdata 
)

◆ orte_show_help_suppress()

int orte_show_help_suppress ( const char *  filename,
const char *  topic 
)

Pretend that this message has already been shown.

Sends a control message to the HNP that will effecitvely suppress this message from being shown. Primitive *-wildcarding is possible.

Not currently supported on HNP-less systems (e.g., cray).

Definition at line 739 of file show_help.c.

References filename, orte_routed_API_t::get_route, orte_proc_info_t::my_hnp_uri, NULL, OBJ_NEW, OBJ_RELEASE, opal_dss, OPAL_INT8, OPAL_STRING, ORTE_ERROR_LOG, orte_execute_quiet, orte_mgmt_conduit, ORTE_PROC_IS_HNP, ORTE_PROC_MY_HNP, ORTE_PROC_MY_NAME, orte_process_info, orte_rml, orte_rml_send_callback(), ORTE_RML_TAG_SHOW_HELP, orte_routed, ORTE_SUCCESS, opal_dss_t::pack, ready, orte_rml_base_API_t::send_buffer_nb, and show_help().

◆ show_accumulated_duplicates()

◆ show_help()

◆ tuple_list_item_constructor()

◆ tuple_list_item_destructor()

◆ xml_format()

static char* xml_format ( unsigned char *  input)
static

Definition at line 135 of file show_help.c.

References free(), input, NULL, ORTE_ERR_OUT_OF_RESOURCE, ORTE_ERROR_LOG, output, and snprintf.

Referenced by show_accumulated_duplicates(), and show_help().

Variable Documentation

◆ abd_tuples

opal_list_t abd_tuples
static

◆ orte_help_output

int orte_help_output
static

◆ orte_help_want_aggregate

bool orte_help_want_aggregate = false

Definition at line 47 of file show_help.c.

Referenced by orte_register_params(), and show_help().

◆ ready

◆ save_help

opal_show_help_fn_t save_help = NULL
static

Definition at line 103 of file show_help.c.

Referenced by orte_show_help_finalize(), and orte_show_help_init().

◆ show_help_interval

struct timeval show_help_interval = { 5, 0 }
static

Definition at line 93 of file show_help.c.

Referenced by show_help().

◆ show_help_time_last_displayed

time_t show_help_time_last_displayed = 0
static

Definition at line 99 of file show_help.c.

Referenced by show_accumulated_duplicates(), and show_help().

◆ show_help_timer_event

opal_event_t show_help_timer_event
static

Definition at line 101 of file show_help.c.

Referenced by orte_show_help_finalize(), and show_help().

◆ show_help_timer_set

bool show_help_timer_set = false
static

Definition at line 100 of file show_help.c.

Referenced by orte_show_help_finalize(), show_accumulated_duplicates(), and show_help().