From e8dc7d7f56df3ebbe2858bcd57b4da5e6689b420 Mon Sep 17 00:00:00 2001 From: leonidk Date: Mon, 10 Apr 2006 09:38:19 +0000 Subject: [PATCH] [MTHCA] added event logging to release builds (maybe - a temporary solution) git-svn-id: svn://openib.tc.cornell.edu/gen1@300 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86 --- trunk/hw/mthca/kernel/SOURCES | 3 +- trunk/hw/mthca/kernel/hca_debug.h | 55 ++++++++++++++++--------------- 2 files changed, 31 insertions(+), 27 deletions(-) diff --git a/trunk/hw/mthca/kernel/SOURCES b/trunk/hw/mthca/kernel/SOURCES index 01c6ded6..b1e5fb5e 100644 --- a/trunk/hw/mthca/kernel/SOURCES +++ b/trunk/hw/mthca/kernel/SOURCES @@ -77,9 +77,10 @@ C_DEFINES = $(C_DEFINES) -DEVENT_TRACING RUN_WPP= $(SOURCES) -km -ext: .c .h .C .H \ -scan:hca_debug.h \ -func:HCA_PRINT(LEVEL,FLAGS,(MSG,...)) \ - -func:HCA_PRINT_EV(LEVEL,FLAGS,(MSG,...)) \ -func:HCA_PRINT_EXIT(LEVEL,FLAGS,(MSG,...)) !ENDIF +# -func:HCA_PRINT_EV(LEVEL,FLAGS,(MSG,...)) \ + MSC_OPTIMIZATION=/Oi MSC_WARNING_LEVEL= /W4 diff --git a/trunk/hw/mthca/kernel/hca_debug.h b/trunk/hw/mthca/kernel/hca_debug.h index a60b1b1b..a8af369f 100644 --- a/trunk/hw/mthca/kernel/hca_debug.h +++ b/trunk/hw/mthca/kernel/hca_debug.h @@ -40,6 +40,30 @@ extern uint32_t g_mthca_dbg_flags; extern WCHAR g_wlog_buf[ MAX_LOG_BUF_LEN ]; extern UCHAR g_slog_buf[ MAX_LOG_BUF_LEN ]; +static void _build_str( const char * format, ... ) +{ + va_list p_arg; + va_start(p_arg, format); + vsprintf((char *)g_slog_buf , format , p_arg); + swprintf(g_wlog_buf, L"%S", g_slog_buf); + va_end(p_arg); +} + +#define HCA_PRINT_TO_EVENT_LOG(_obj_,_level_,_flag_,_msg_) \ + { \ + NTSTATUS event_id; \ + switch (_level_) { \ + case TRACE_LEVEL_FATAL: case TRACE_LEVEL_ERROR: event_id = EVENT_MTHCA_ANY_ERROR; break; \ + case TRACE_LEVEL_WARNING: event_id = EVENT_MTHCA_ANY_WARN; break; \ + default: event_id = EVENT_MTHCA_ANY_INFO; break; \ + } \ + _build_str _msg_; \ + WriteEventLogEntryStr( _obj_, (ULONG)event_id, 0, 0, g_wlog_buf, 0, 0 ); \ + } + +#define HCA_PRINT_EV_MDEV(_level_,_flag_,_msg_) \ + HCA_PRINT_TO_EVENT_LOG(mdev->ext->cl_ext.p_self_do,_level_,_flag_,_msg_) + #if defined(EVENT_TRACING) // @@ -78,6 +102,11 @@ extern UCHAR g_slog_buf[ MAX_LOG_BUF_LEN ]; // end_wpp +#define HCA_PRINT_EV(_level_,_flag_,_msg_) \ + { \ + HCA_PRINT_EV_MDEV(_level_,_flag_,_msg_) \ + } + #else @@ -101,30 +130,6 @@ extern UCHAR g_slog_buf[ MAX_LOG_BUF_LEN ]; #define HCA_DBG_LOW (1 << 9) #define HCA_DBG_SHIM (1 << 10) -static void _build_str( const char * format, ... ) -{ - va_list p_arg; - va_start(p_arg, format); - vsprintf((char *)g_slog_buf , format , p_arg); - swprintf(g_wlog_buf, L"%S", g_slog_buf); - va_end(p_arg); -} - -#define HCA_PRINT_TO_EVENT_LOG(_obj_,_level_,_flag_,_msg_) \ - { \ - NTSTATUS event_id; \ - switch (_level_) { \ - case TRACE_LEVEL_FATAL: case TRACE_LEVEL_ERROR: event_id = EVENT_MTHCA_ANY_ERROR; break; \ - case TRACE_LEVEL_WARNING: event_id = EVENT_MTHCA_ANY_WARN; break; \ - default: event_id = EVENT_MTHCA_ANY_INFO; break; \ - } \ - _build_str _msg_; \ - WriteEventLogEntryStr( _obj_, (ULONG)event_id, 0, 0, g_wlog_buf, 0, 0 ); \ - } - -#define HCA_PRINT_EV_MDEV(_level_,_flag_,_msg_) \ - HCA_PRINT_TO_EVENT_LOG(mdev->ext->cl_ext.p_self_do,_level_,_flag_,_msg_) - #if DBG @@ -170,8 +175,6 @@ static void _build_str( const char * format, ... ) #endif //EVENT_TRACING - - #endif /*_HCA_DEBUG_H_ */ -- 2.41.0