<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16587" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=002000615-08072008>This patch fixes 
some small issues that prevented WPP from working on mlx4.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Index: 
mlx4/kernel/bus/core/iobuf.c<BR>===================================================================<BR>--- 
mlx4/kernel/bus/core/iobuf.c (revision 1340)<BR>+++ 
mlx4/kernel/bus/core/iobuf.c (working copy)<BR>@@ -33,6 +33,7 @@<BR>  
*<BR>  * $Id: mt_memory.c 2020 2007-05-01 09:29:10Z leonid $<BR>  
*/<BR>+#include <mlx4_debug.h><BR> #include "l2w.h"<BR> #include 
"pa_cash.h"<BR> #include "ib_verbs.h"<BR>Index: 
mlx4/kernel/bus/core/l2w_umem.c<BR>===================================================================<BR>--- 
mlx4/kernel/bus/core/l2w_umem.c (revision 1340)<BR>+++ 
mlx4/kernel/bus/core/l2w_umem.c (working copy)<BR>@@ -1,4 +1,4 
@@<BR>-<BR>+#include <mlx4_debug.h><BR> #include 
"l2w.h"<BR> #include "ib_verbs.h"<BR> <BR>Index: 
mlx4/kernel/bus/core/pa_cash.c<BR>===================================================================<BR>--- 
mlx4/kernel/bus/core/pa_cash.c (revision 1340)<BR>+++ 
mlx4/kernel/bus/core/pa_cash.c (working copy)<BR>@@ -32,7 +32,7 
@@<BR>  *<BR>  * $Id: mlnx_uvp_cq.c 1611 2006-08-20 14:48:55Z sleybo 
$<BR>  */<BR>-<BR>+#include <mlx4_debug.h><BR> #include 
"l2w.h"<BR> #include "pa_cash.h"<BR> <BR>Index: 
mlx4/kernel/bus/core/SOURCES<BR>===================================================================<BR>--- 
mlx4/kernel/bus/core/SOURCES (revision 1340)<BR>+++ 
mlx4/kernel/bus/core/SOURCES (working copy)<BR>@@ -43,7 +43,7 
@@<BR> C_DEFINES = $(C_DEFINES) -DEVENT_TRACING<BR> <BR> RUN_WPP 
= $(SOURCES) -km -ext: .c .h .C .H \<BR>- -scan:..\inc\mlx4_debug.h 
\<BR>+ -scan:..\..\inc\mlx4_debug.h 
\<BR>  -func:MLX4_PRINT(LEVEL,FLAGS,(MSG,...)) 
\<BR>  -func:MLX4_PRINT_EXIT(LEVEL,FLAGS,(MSG,...)) 
<BR> !ENDIF<BR>Index: 
mlx4/kernel/bus/ib/cq.c<BR>===================================================================<BR>--- 
mlx4/kernel/bus/ib/cq.c (revision 1340)<BR>+++ 
mlx4/kernel/bus/ib/cq.c (working copy)<BR>@@ -29,7 +29,7 @@<BR>  * 
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE<BR>  * 
SOFTWARE.<BR>  */<BR>-<BR>+#include <mlx4_debug.h><BR> #include 
"mlx4_ib.h"<BR> #include "cq.h"<BR> #include "qp.h"<BR>Index: 
mlx4/kernel/bus/ib/mad.c<BR>===================================================================<BR>--- 
mlx4/kernel/bus/ib/mad.c (revision 1340)<BR>+++ 
mlx4/kernel/bus/ib/mad.c (working copy)<BR>@@ -30,6 +30,7 @@<BR>  * 
SOFTWARE.<BR>  */<BR> <BR>+#include 
<mlx4_debug.h><BR> #include "mlx4_ib.h"<BR> #include 
<ib_mad.h><BR> #include <ib_smi.h><BR>Index: 
mlx4/kernel/bus/net/mlx4.h<BR>===================================================================<BR>--- 
mlx4/kernel/bus/net/mlx4.h (revision 1340)<BR>+++ 
mlx4/kernel/bus/net/mlx4.h (working copy)<BR>@@ -37,6 +37,7 
@@<BR> #ifndef MLX4_H<BR> #define MLX4_H<BR> <BR>+#include 
<mlx4_debug.h><BR> #include "l2w.h"<BR> #include 
"device.h"<BR> #include "doorbell.h"<BR>Index: 
mlx4/kernel/hca/drv.c<BR>===================================================================<BR>--- 
mlx4/kernel/hca/drv.c (revision 1340)<BR>+++ 
mlx4/kernel/hca/drv.c (working copy)<BR>@@ -35,6 +35,9 @@<BR> #include 
<wdmguid.h><BR> <BR> #if defined(EVENT_TRACING)<BR>+#ifdef 
offsetof<BR>+#undef offsetof<BR>+#endif<BR> #include 
"drv.tmh"<BR> #endif <BR> <BR>@@ -652,7 +655,7 
@@<BR> <BR>  /* get node GUID */<BR>  err = 
__get_dev_info( p_fdo, &p_fdo->hca.guid, &p_fdo->hca.hw_ver 
);<BR>- if (err) {<BR>+ if (err) 
{<BR> <BR>   HCA_PRINT(TRACE_LEVEL_ERROR   
,HCA_DBG_LOW   ,<BR>    ("can't get guid - 
ib_query_device() failed (%08X)\n", err ));<BR>@@ -1765,7 +1768,7 
@@<BR> <BR>  /* get node GUID */<BR>  err = 
__get_dev_info( p_fdo, &p_fdo->hca.guid, &p_fdo->hca.hw_ver 
);<BR>- if (err) {<BR>+ if (err) 
{<BR> <BR>   HCA_PRINT(TRACE_LEVEL_ERROR   
,HCA_DBG_LOW   ,<BR>    ("can't get guid - 
ib_query_device() failed (%08X)\n", err ));<BR>Index: 
mlx4/kernel/hca/fw.c<BR>===================================================================<BR>--- 
mlx4/kernel/hca/fw.c (revision 1340)<BR>+++ 
mlx4/kernel/hca/fw.c (working copy)<BR>@@ -36,7 +36,7 @@<BR> #ifdef 
offsetof<BR> #undef offsetof<BR> #endif<BR>-#include 
"vp.tmh"<BR>+#include "fw.tmh"<BR> #endif<BR> <BR> <BR>Index: 
mlx4/kernel/hca/SOURCES<BR>===================================================================<BR>--- 
mlx4/kernel/hca/SOURCES (revision 1340)<BR>+++ 
mlx4/kernel/hca/SOURCES (working copy)<BR>@@ -3,7 +3,7 
@@<BR> TARGETTYPE=DRIVER<BR> <BR> !if 
$(FREEBUILD)<BR>-#ENABLE_EVENT_TRACING=1<BR>+ENABLE_EVENT_TRACING=1<BR> !else<BR> #ENABLE_EVENT_TRACING=1<BR> !endif<BR>Index: 
mlx4/kernel/hca/verbs.c<BR>===================================================================<BR>--- 
mlx4/kernel/hca/verbs.c (revision 1340)<BR>+++ 
mlx4/kernel/hca/verbs.c (working copy)<BR>@@ -242,7 +242,6 @@<BR> // 
Queue pairs <BR> //<BR> <BR>-#if DBG<BR> static char 
*__print_qtype(enum ib_qp_type qtype)<BR> {<BR>  char *str = 
NULL;<BR>@@ -258,7 +257,6 @@<BR>  }<BR>  return 
str;<BR> }<BR>-#endif<BR> <BR> struct ib_qp *ibv_create_qp(struct 
ib_pd *pd,<BR>  struct ib_qp_init_attr *qp_init_attr,<BR>Index: 
mlx4/kernel/inc/l2w.h<BR>===================================================================<BR>--- 
mlx4/kernel/inc/l2w.h (revision 1340)<BR>+++ 
mlx4/kernel/inc/l2w.h (working copy)<BR>@@ -283,7 +283,6 @@<BR> struct 
mlx4_dev;<BR> struct mlx4_priv;<BR> <BR>-#include 
<mlx4_debug.h><BR> #include <l2w_atomic.h><BR> #include 
<l2w_bit.h><BR> #include <l2w_bitmap.h><BR>Index: 
mlx4/kernel/inc/mlx4_debug.h<BR>===================================================================<BR>--- 
mlx4/kernel/inc/mlx4_debug.h (revision 1340)<BR>+++ 
mlx4/kernel/inc/mlx4_debug.h (working copy)<BR>@@ -33,14 +33,18 
@@<BR> #ifndef  _MLX4_DEBUG_H_<BR> #define 
_MLX4_DEBUG_H_<BR> <BR>+#include <ntddk.h><BR>+#define 
NTSTRSAFE_LIB<BR>+#include <ntstrsafe.h><BR>+<BR>+<BR> #include 
"ev_log.h"<BR> <BR>-extern uint32_t  g_mlx4_dbg_level;<BR>-extern 
uint32_t  g_mlx4_dbg_flags;<BR>+extern unsigned 
int  g_mlx4_dbg_level;<BR>+extern unsigned 
int  g_mlx4_dbg_flags;<BR> #define 
MAX_LOG_BUF_LEN  512<BR> extern WCHAR g_wlog_buf[ MAX_LOG_BUF_LEN 
]; <BR> extern UCHAR g_slog_buf[ MAX_LOG_BUF_LEN ];  
<BR>-<BR> static void _build_str( const char * format, ... 
)<BR> {<BR>  NTSTATUS status;<BR></DIV></FONT></BODY></HTML>