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

Reply via email to