![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /etc/alternatives/mpi/openmpi/opal/util/ |
Upload File : |
/* * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana * University Research and Technology * Corporation. All rights reserved. * Copyright (c) 2004-2006 The University of Tennessee and The University * of Tennessee Research Foundation. All rights * reserved. * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, * University of Stuttgart. All rights reserved. * Copyright (c) 2004-2005 The Regents of the University of California. * All rights reserved. * Copyright (c) 2017 FUJITSU LIMITED. All rights reserved. * $COPYRIGHT$ * * Additional copyrights may follow * * $HEADER$ */ #ifndef OPAL_UTIL_ERROR_H #define OPAL_UTIL_ERROR_H #include "opal_config.h" #include "opal/util/output.h" BEGIN_C_DECLS #define OPAL_ERROR_LOG(r) \ opal_output(0, "OPAL ERROR: %s in file %s at line %d", \ opal_strerror((r)), __FILE__, __LINE__); /** * Prints error message for errnum on stderr * * Print the error message corresponding to the value of \c errnum and * writes it, followed by a newline, to the standard error file * descriptor. If the argument \c msg is non-NULL, this string is * prepended to the message string and separated from it by a colon * and a space. Otherwise, only the error message string is printed. * * If errnum is OPAL_ERR_IN_ERRNO, the system perror is called with * the argument \c msg. */ OPAL_DECLSPEC void opal_perror(int errnum, const char *msg); /** * Return string for given error message * * Accepts an error number argument \c errnum and returns a pointer to * the corresponding message string. The result is returned in a * static buffer that should not be released with free(). * * If errnum is \c OPAL_ERR_IN_ERRNO, the system strerror is called * with an argument of the current value of \c errno and the resulting * string is returned. * * If the errnum is not a known value, the returned value may be * overwritten by subsequent calls to opal_strerror. */ OPAL_DECLSPEC const char *opal_strerror(int errnum); /** * Return string for given error message * * Similar to opal_strerror, but a buffer is passed in which is filled * with a string (up to buflen - 1 characters long) containing the * error message corresponding to \c errnum. Unlike opal_strerror(), * if an unknown value for \c errnum is passed, the returned buffer * will not be overwritten by subsequent calls to opal_strerror_r(). */ OPAL_DECLSPEC int opal_strerror_r(int errnum, char *strerrbuf, size_t buflen); typedef int (*opal_err2str_fn_t)(int errnum, const char **str); /** * \internal * * Register a handler for converting errnums to error strings * * Handlers will be invoked by opal_perror() , opal_strerror(), and * opal_strerror_r() to return the appropriate values. * * \note A maximum of 5 converters can be registered. The 6th * converter registration attempt will return OPAL_ERR_OUT_OF_RESOURCE */ OPAL_DECLSPEC int opal_error_register(const char *project, int err_base, int err_max, opal_err2str_fn_t converter); /** * Print a message and sleep in accordance with the opal_abort_delay value * * This function is (almost) async-thread-safe so it can be called from * a signal handler. */ OPAL_DECLSPEC void opal_delay_abort(void); END_C_DECLS #endif /* OPAL_UTIL_ERROR_H */