<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18702"></HEAD>
<BODY>
<DIV><FONT size=2 face=Arial><SPAN class=828071510-03032010>While running some 
nd tests I have received the assert </SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN 
class=828071510-03032010></SPAN></FONT> </DIV>
<DIV><FONT size=2 face=Arial><SPAN class=828071510-03032010>CL_ASSERT( 
KeGetCurrentIrql() == DISPATCH_LEVEL ); al_cm_cep.c line 
2218</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN 
class=828071510-03032010></SPAN></FONT> </DIV>
<DIV><FONT size=2 face=Arial><SPAN class=828071510-03032010>code stack is 
bellow.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=828071510-03032010>Since the assumption 
is not true, but is also assumed in the functions that are called from it I 
raise the dispatch level to DISPATCH_LEVEL </SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=828071510-03032010>in this 
function.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN 
class=828071510-03032010></SPAN></FONT> </DIV>
<DIV><FONT size=2 face=Arial><SPAN class=828071510-03032010>Here is the 
patch:</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN 
class=828071510-03032010></SPAN></FONT> </DIV>
<DIV><SPAN class=828071510-03032010><FONT size=2 face=Arial>Index: 
al_cm_cep.c<BR>===================================================================<BR>--- 
al_cm_cep.c (revision 5646)<BR>+++ al_cm_cep.c (working copy)<BR>@@ 
-2208,10 +2208,13 
@@<BR>  KLOCK_QUEUE_HANDLE hdl;<BR>  ib_pfn_destroy_cb_t pfn_destroy_cb;<BR>  void    *cep_context;<BR>+ KIRQL 
irql;<BR> <BR>  AL_ENTER( AL_DBG_CM );<BR>+ UNUSED_PARAM( 
h_mad_svc );<BR> <BR>- UNUSED_PARAM( h_mad_svc );<BR>+ irql = 
KeRaiseIrqlToDpcLevel();<BR>+<BR>  CL_ASSERT( p_mad->p_next == NULL 
);<BR>  CL_ASSERT( KeGetCurrentIrql() == DISPATCH_LEVEL 
);<BR> <BR>@@ -2224,6 +2227,7 
@@<BR>  {<BR>   ib_put_mad( p_mad 
);<BR>   AL_EXIT( AL_DBG_CM 
);<BR>+  KeLowerIrql(irql);<BR>   return;<BR>  }<BR> <BR>@@ 
-2298,6 +2302,7 @@<BR> <BR>  if( !cl_atomic_dec( 
&p_cep->ref_cnt ) && pfn_destroy_cb 
)<BR>   pfn_destroy_cb( cep_context 
);<BR>+ KeLowerIrql(irql);<BR>  AL_EXIT( AL_DBG_CM 
);<BR> }<BR> </FONT></DIV>
<DIV><SPAN class=828071510-03032010></SPAN><FONT size=2 face=Arial>T<SPAN 
class=828071510-03032010>hanks</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=828071510-03032010>Tzachi</SPAN></DIV>
<DIV><BR></DIV></FONT></SPAN>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>0: kd> 
k<BR>Child-SP          
RetAddr           Call 
Site<BR>fffff880`03af71d0 fffff880`04102e20 
nt!RtlAssert+0xe8<BR>fffff880`03af76f0 fffff880`040bf834 
ibbus!__cep_mad_send_cb+0x120 [q:\projinf3\trunk\core\al\kernel\al_cm_cep.c @ 
2216]<BR>fffff880`03af7780 fffff880`040bf0cf ibbus!__notify_send_comp+0x2c4 
[q:\projinf3\trunk\core\al\al_mad.c @ 2009]<BR>fffff880`03af77c0 
fffff880`040b8ec0 ibbus!__mad_svc_send_done+0x5bf 
[q:\projinf3\trunk\core\al\al_mad.c @ 1942]<BR>fffff880`03af7810 
fffff880`040631a1 ibbus!mad_disp_send_done+0x500 
[q:\projinf3\trunk\core\al\al_mad.c @ 867]<BR>fffff880`03af7860 
fffff880`04063464 ibbus!__complete_send_mad+0x71 
[q:\projinf3\trunk\core\al\kernel\al_smi.c @ 912]<BR>fffff880`03af78d0 
fffff880`040d0eb6 ibbus!destroying_spl_qp_svc+0x2b4 
[q:\projinf3\trunk\core\al\kernel\al_smi.c @ 975]<BR>fffff880`03af7930 
fffff880`040d02f9 ibbus!destroy_obj+0x436 [q:\projinf3\trunk\core\al\al_common.c 
@ 606]<BR>fffff880`03af7990 fffff880`040604d7 ibbus!async_destroy_obj+0xd9 
[q:\projinf3\trunk\core\al\al_common.c @ 477]<BR>fffff880`03af79c0 
fffff880`040600d5 ibbus!spl_qp_agent_pnp+0x367 
[q:\projinf3\trunk\core\al\kernel\al_smi.c @ 508]<BR>fffff880`03af7a20 
fffff880`040b11c5 ibbus!spl_qp1_agent_pnp_cb+0xb5 
[q:\projinf3\trunk\core\al\kernel\al_smi.c @ 469]<BR>fffff880`03af7a60 
fffff880`040b3a3f ibbus!__pnp_notify_user+0x865 
[q:\projinf3\trunk\core\al\kernel\al_pnp.c @ 555]<BR>fffff880`03af7b00 
fffff880`040b3be3 ibbus!__pnp_process_remove_port+0x35f 
[q:\projinf3\trunk\core\al\kernel\al_pnp.c @ 1062]<BR>fffff880`03af7c20 
fffff880`0404852f ibbus!__pnp_process_remove_ca+0xc3 
[q:\projinf3\trunk\core\al\kernel\al_pnp.c @ 1101]<BR>fffff880`03af7c80 
fffff880`0404e505 ibbus!__cl_async_proc_worker+0xbf 
[q:\projinf3\trunk\core\complib\cl_async_proc.c @ 153]<BR>fffff880`03af7cd0 
fffff880`0404f7fc ibbus!__cl_thread_pool_routine+0x75 
[q:\projinf3\trunk\core\complib\cl_threadpool.c @ 67]<BR>fffff880`03af7d10 
fffff800`01922166 ibbus!__thread_callback+0x3c 
[q:\projinf3\trunk\core\complib\kernel\cl_thread.c @ 48]<BR>fffff880`03af7d40 
fffff800`0165d486 nt!PspSystemThreadStartup+0x5a<BR>fffff880`03af7d80 
00000000`00000000 nt!KxStartSystemThread+0x16<BR></DIV></FONT></BODY></HTML>