Add _v2 APIs for osm_log, osm_log_is_active, and osm_log_msg_box Also, add these to libopensm.map
All of above pass additional parameter to identify module. Each module defines a unique FILE_ID from 0-255. FILE_ID must match index in osm_subnet.c:module_name_str table. Modify OSM_LOG macros to use version 2 log APIs when FILE_ID is defined. Modify OpenSM client code to use version 2 log APIs when used log functions and not macros. Added options to enable/disable per module logging and it's configuration file Config file format Set of lines with module name and logging level as follows: <module name><separator><logging level> where: module name is file name including .c separator is either = , space, or tab logging level is the same levels as used in the coarse/overall logging as follows: BIT LOG LEVEL ENABLED ---- ----------------- 0x01 - ERROR (error messages) 0x02 - INFO (basic messages, low volume) 0x04 - VERBOSE (interesting stuff, moderate volume) 0x08 - DEBUG (diagnostic, high volume) 0x10 - FUNCS (function entry/exit, very high volume) 0x20 - FRAMES (dumps all SMP and GMP frames) 0x40 - ROUTING (dump FDB routing information) 0x80 - SYS (syslog at LOG_INFO level in addition to OpenSM logging) Add parsing of the configuration file into table of log levels indexed by FILE_ID Added osm_get_log_per_module routine to obtain the configured info for a supplied module name. This is a new library function. Signed-off-by: Hal Rosenstock <[email protected]> --- Changes since v2: Fixed find_module_name bug/typo Found and fixed by Ilya Nelkenbaum <[email protected]> Changes since v1: Modify OSM_LOG macros to use version 2 log APIs when FILE_ID defined Eliminate magic numbers around per module logging table Based on comments from Jim Foraker <[email protected]> --- As this patch still is too large for email, please find this @ https://www.openfabrics.org/~halr/0001-opensm-Add-per-module-logging-support.patch -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
