[mthca] Fix a build break. [mlnx: 4411]
[mirror/winof/.git] / hw / mthca / kernel / hca_debug.h
index 5fe3181..62a016c 100644 (file)
@@ -33,6 +33,7 @@
 #ifndef  _HCA_DEBUG_H_\r
 #define _HCA_DEBUG_H_\r
 \r
+#include <ntstrsafe.h>\r
 \r
 extern uint32_t                g_mthca_dbg_level;\r
 extern uint32_t                g_mthca_dbg_flags;\r
@@ -42,16 +43,25 @@ extern UCHAR g_slog_buf[ MAX_LOG_BUF_LEN ];
 \r
 static void _build_str( const char *   format, ... )\r
 {\r
+       NTSTATUS status;\r
        va_list p_arg;\r
        va_start(p_arg, format);\r
-       vsprintf((char *)g_slog_buf , format , p_arg);\r
-       swprintf(g_wlog_buf, L"%S", g_slog_buf);\r
+       status = RtlStringCbVPrintfA((char *)g_slog_buf, sizeof(g_slog_buf), format , p_arg);\r
+       if (status)\r
+               goto end;\r
+\r
+       status = RtlStringCchPrintfW(g_wlog_buf, sizeof(g_wlog_buf)/sizeof(g_wlog_buf[0]), L"%S", g_slog_buf);\r
+       if (status)\r
+               goto end;\r
+\r
+end:\r
        va_end(p_arg);\r
 }\r
 \r
 #define HCA_PRINT_TO_EVENT_LOG(_obj_,_level_,_flag_,_msg_)  \\r
        { \\r
                NTSTATUS event_id; \\r
+               __pragma(warning(suppress:6326)) \\r
                switch (_level_) { \\r
                        case TRACE_LEVEL_FATAL: case TRACE_LEVEL_ERROR: event_id = EVENT_MTHCA_ANY_ERROR; break; \\r
                        case TRACE_LEVEL_WARNING: event_id = EVENT_MTHCA_ANY_WARN; break; \\r
@@ -62,7 +72,11 @@ static void _build_str( const char * format, ... )
        }\r
 \r
 #define HCA_PRINT_EV_MDEV(_level_,_flag_,_msg_)  \\r
-       HCA_PRINT_TO_EVENT_LOG(mdev->ext->cl_ext.p_self_do,_level_,_flag_,_msg_)\r
+{\\r
+       if(mdev) {\\r
+               HCA_PRINT_TO_EVENT_LOG(mdev->ext->cl_ext.p_self_do,_level_,_flag_,_msg_)\\r
+       }\\r
+}\\r
 \r
 \r
 #if defined(EVENT_TRACING)\r
@@ -77,14 +91,17 @@ static void _build_str( const char *        format, ... )
        WPP_DEFINE_BIT( HCA_DBG_INIT) \\r
        WPP_DEFINE_BIT( HCA_DBG_MAD) \\r
        WPP_DEFINE_BIT( HCA_DBG_PO) \\r
+       WPP_DEFINE_BIT( HCA_DBG_PD)\\r
        WPP_DEFINE_BIT( HCA_DBG_CQ) \\r
        WPP_DEFINE_BIT( HCA_DBG_QP) \\r
        WPP_DEFINE_BIT( HCA_DBG_MEMORY) \\r
        WPP_DEFINE_BIT( HCA_DBG_AV) \\r
        WPP_DEFINE_BIT( HCA_DBG_SRQ) \\r
+       WPP_DEFINE_BIT( HCA_DBG_MCAST) \\r
        WPP_DEFINE_BIT( HCA_DBG_LOW) \\r
        WPP_DEFINE_BIT( HCA_DBG_SHIM))\r
 \r
+\r
 #define WPP_GLOBALLOGGER\r
 \r
 \r
@@ -100,11 +117,10 @@ static void _build_str( const char *      format, ... )
 // USEPREFIX(HCA_PRINT, "%!STDPREFIX! [MTHCA] :%!FUNC!() :");\r
 // USESUFFIX(HCA_ENTER, " [MTHCA] :%!FUNC!()[");\r
 // USESUFFIX(HCA_EXIT, " [MTHCA] :%!FUNC!()]");\r
-// USEPREFIX(HCA_PRINT_EXIT, "%!STDPREFIX! [MTHCA] :%!FUNC!() :");\r
-// USESUFFIX(HCA_PRINT_EXIT, "[MTHCA] :%!FUNC!():]");\r
 // end_wpp\r
 \r
 \r
+\r
 #define HCA_PRINT_EV(_level_,_flag_,_msg_)  \\r
     { \\r
            HCA_PRINT_EV_MDEV(_level_,_flag_,_msg_) \\r
@@ -125,14 +141,16 @@ static void _build_str( const char *      format, ... )
 #define HCA_DBG_PNP    (1<<1)\r
 #define HCA_DBG_INIT   (1 << 2)\r
 #define HCA_DBG_MAD    (1 << 3)\r
-#define HCA_DBG_PO     (1 << 4)\r
-#define HCA_DBG_QP     (1 << 5)\r
-#define HCA_DBG_CQ     (1 << 6)\r
-#define HCA_DBG_MEMORY (1 << 7)\r
-#define HCA_DBG_AV     (1<<8)\r
-#define HCA_DBG_SRQ    (1 << 9)\r
-#define HCA_DBG_LOW    (1 << 10)\r
-#define HCA_DBG_SHIM   (1 << 11)\r
+#define HCA_DBG_PO             (1 << 4)\r
+#define HCA_DBG_PD             (1<<5)\r
+#define HCA_DBG_QP             (1 << 6)\r
+#define HCA_DBG_CQ             (1 << 7)\r
+#define HCA_DBG_MEMORY (1 << 8)\r
+#define HCA_DBG_AV             (1<<9)\r
+#define HCA_DBG_SRQ    (1 << 10)\r
+#define HCA_DBG_MCAST  (1<<11)\r
+#define HCA_DBG_LOW    (1 << 12)\r
+#define HCA_DBG_SHIM   (1 << 13)\r
 \r
 \r
 #if DBG\r
@@ -143,9 +161,9 @@ static void _build_str( const char *        format, ... )
                int __lvl = _level_; \\r
                if (g_mthca_dbg_level >= (_level_) && \\r
                        (g_mthca_dbg_flags & (_flag_))) { \\r
-                               DbgPrint ("[MTHCA] %s() :", __FUNCTION__); \\r
-                               if(__lvl == TRACE_LEVEL_ERROR) DbgPrint ("***ERROR***  "); \\r
-                               DbgPrint _msg_; \\r
+                               cl_dbg_out ("~%d:[MTHCA] %s() :", KeGetCurrentProcessorNumber(), __FUNCTION__); \\r
+                               if(__lvl == TRACE_LEVEL_ERROR) cl_dbg_out ("***ERROR***  "); \\r
+                               cl_dbg_out _msg_; \\r
                } \\r
        }\r
 \r
@@ -168,14 +186,6 @@ static void _build_str( const char *       format, ... )
        HCA_PRINT(TRACE_LEVEL_VERBOSE, flags, ("]\n" ));\r
 \r
 \r
-#define HCA_PRINT_EXIT(_level_,_flag_,_msg_)   \\r
-       {\\r
-               if (status != IB_SUCCESS) {\\r
-                       HCA_PRINT(_level_,_flag_,_msg_);\\r
-               }\\r
-               HCA_EXIT(_flag_);\\r
-       }\r
-\r
 #endif //EVENT_TRACING\r
 \r
 \r