<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:st1 =
"urn:schemas-microsoft-com:office:smarttags" xmlns:w =
"urn:schemas-microsoft-com:office:word" xmlns:o =
"urn:schemas-microsoft-com:office:office" xmlns:v =
"urn:schemas-microsoft-com:vml"><HEAD><!--[if !mso]><TITLE>RE: [Openib-windows] srp blue screen when CM fail to connect</TITLE>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<STYLE>v\:* {
BEHAVIOR: url(#default#VML)
}
o\:* {
BEHAVIOR: url(#default#VML)
}
w\:* {
BEHAVIOR: url(#default#VML)
}
.shape {
BEHAVIOR: url(#default#VML)
}
</STYLE>
<![endif]--><!--[if !mso]>
<STYLE>st1\:* {
BEHAVIOR: url(#default#ieooui)
}
</STYLE>
<![endif]-->
<STYLE>@font-face {
font-family: Tahoma;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
A:link {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
COLOR: blue; TEXT-DECORATION: underline
}
P {
FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
}
SPAN.EmailStyle18 {
COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal-reply
}
DIV.Section1 {
page: Section1
}
</STYLE>
<META content="MSHTML 6.00.2900.2963" name=GENERATOR></HEAD>
<BODY lang=EN-US vLink=blue link=blue>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2>Fab</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>We
still get the blue screen (even on new installation ) on object
destruction.</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>The
problem is with ib_close_ca .</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>The ca
object is using sync destruction (AL_OBJ_SUBTYPE_UM_EXPORT) but its
destruction still use ib_syn_destroy flag.</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2>proxy_close_ca function:</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2><BR><STRONG> /*<BR> * Note that we hold a reference on the CA,
so we need to<BR> * call close_ca, not ib_close_ca. We also don't
release the reference<BR> * since close_ca will do so (by destroying the
object).<BR> */<BR> h_ca->obj.pfn_destroy( &h_ca->obj,
ib_sync_destroy );<BR> p_ioctl->out.status =
IB_SUCCESS;<BR></STRONG></FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>The
code does not protect sync objects from using the ib_sync_destroy function and
we end up with calling 0xffffffff.</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>We can
fix the call in proxy_close_ca but there are more places that use
ib_sync_destroy function</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006></SPAN><SPAN
class=398265010-10092006></SPAN><SPAN class=398265010-10092006></SPAN><SPAN
class=398265010-10092006><FONT face=Arial color=#0000ff size=2>I think the way
to solve this is to check ib_sync_destroy also in the
sync_destroy_obj function .</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>This
patch fix the problem :</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>Index:
W:/work/clean/core/al/al_common.c<BR>===================================================================<BR>---
W:/work/clean/core/al/al_common.c (revision 1666)<BR>+++
W:/work/clean/core/al/al_common.c (revision 1667)<BR>@@ -467,7 +467,7
@@<BR> AL_ENTER( AL_DBG_AL_OBJ );<BR> <BR> if(
pfn_destroy_cb == ib_sync_destroy )<BR>- sync_destroy_obj( p_obj,
__sync_destroy_cb );<BR>+ sync_destroy_obj( p_obj, pfn_destroy_cb
);<BR> else if( destroy_obj( p_obj, pfn_destroy_cb )
)<BR> deref_al_obj( p_obj ); /* Only destroy the object
once. */<BR> <BR>@@ -482,10 +482,12
@@<BR> IN const ib_pfn_destroy_cb_t pfn_destroy_cb
)<BR> {<BR> cl_status_t cl_status;<BR>+ ib_pfn_destroy_cb_t
destroy_cb = (pfn_destroy_cb == ib_sync_destroy) ? __sync_destroy_cb
:pfn_destroy_cb;<BR> <BR> AL_ENTER( AL_DBG_AL_OBJ
);<BR> <BR>- if( !destroy_obj( p_obj, pfn_destroy_cb )
)<BR>+<BR>+ if( !destroy_obj( p_obj, destroy_cb )
)<BR> {<BR> /* Object is already being destroyed...
*/<BR> AL_EXIT( AL_DBG_AL_OBJ );<BR></FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff size=2>this
is the blue screen call stack:</FONT></SPAN></DIV>
<DIV><SPAN class=398265010-10092006><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV><SPAN class=398265010-10092006><FONT face=Arial
color=#0000ff size=2>
<DIV><BR>PAGE_FAULT_IN_NONPAGED_AREA (50)<BR>Invalid system memory was
referenced. This cannot be protected by try-except,<BR>it must be
protected by a Probe. Typically the address is just plain bad or it<BR>is
pointing at freed memory.<BR>Arguments:<BR>Arg1: ffffffff, memory
referenced.<BR>Arg2: 00000000, value 0 = read operation, 1 = write
operation.<BR>Arg3: ffffffff, If non-zero, the instruction address which
referenced the bad memory<BR> address.<BR>Arg4: 00000000, (reserved)</DIV>
<DIV> </DIV>
<DIV>Debugging Details:<BR>------------------</DIV>
<DIV> </DIV>
<DIV><BR>READ_ADDRESS: ffffffff </DIV>
<DIV> </DIV>
<DIV>FAULTING_IP: <BR>+ffffffffffffffff<BR>ffffffff
??
???</DIV>
<DIV> </DIV>
<DIV>MM_INTERNAL_CODE: 0</DIV>
<DIV> </DIV>
<DIV>DEFAULT_BUCKET_ID: DRIVER_FAULT</DIV>
<DIV> </DIV>
<DIV>BUGCHECK_STR: 0x50</DIV>
<DIV> </DIV>
<DIV>CURRENT_IRQL: 1</DIV>
<DIV> </DIV>
<DIV>LAST_CONTROL_TRANSFER: from 8087a46f to 80833f96</DIV>
<DIV> </DIV>
<DIV>FAILED_INSTRUCTION_ADDRESS: <BR>+ffffffffffffffff<BR>ffffffff
??
???</DIV>
<DIV> </DIV>
<DIV>STACK_TEXT: <BR>b959e698 8087a46f 00000003 00000000 ffffffff
nt!RtlpBreakWithStatusInstruction<BR>b959e6e4 8087b236 00000003 808b4120
88d848c8 nt!KiBugCheckDebugBreak+0x19<BR>b959ea7c 8087b6be 00000050 ffffffff
00000000 nt!KeBugCheck2+0x5b2<BR>b959ea9c 808689ee 00000050 ffffffff 00000000
nt!KeBugCheckEx+0x1b<BR>b959eaec 80837d0a 00000000 ffffffff 00000000
nt!MmAccessFault+0x813<BR>b959eaec ffffffff 00000000 ffffffff 00000000
nt!KiTrap0E+0xdc<BR>WARNING: Frame IP not in any known module. Following frames
may be wrong.<BR>b959eb74 b940b35a 00089318 88d86b2c 00000200
0xffffffff<BR>b959eb8c b940b024 88d86b2c 89989d20 899a6cd8
ibbus!async_destroy_cb+0xda [s:\builds\1660\trunk\core\al\al_common.c @
675]<BR>b959eba0 b9410b9e 88d86b18 ffffffff ffffffff ibbus!sync_destroy_obj+0xd6
[s:\builds\1660\trunk\core\al\al_common.c @ 548]<BR>b959ebbc b94147de 8895b2c0
b959ebf4 8895b2c0 ibbus!proxy_close_ca+0xca
[s:\builds\1660\trunk\core\al\kernel\al_proxy_verbs.c @ 638]<BR>b959ebd8
b93ee640 8895b2c0 b959ebf4 89cf32d8 ibbus!verbs_ioctl+0x24c
[s:\builds\1660\trunk\core\al\kernel\al_proxy_verbs.c @ 3451]<BR>b959ebf8
b942411e 8895b2c0 80a78be4 89cf3220 ibbus!al_dev_ioctl+0xb2
[s:\builds\1660\trunk\core\al\kernel\al_dev.c @ 455]<BR>b959ec10 809d457d
89cf3304 89cf32ec 8895b2c0 ibbus!bus_drv_ioctl+0x8e
[s:\builds\1660\trunk\core\bus\kernel\bus_driver.c @ 401]<BR>b959ec40 80859657
8092d3b9 b959ec60 8092d3b9 nt!IovCallDriver+0x112<BR>b959ec4c 8092d3b9 8895b354
8987f280 8895b2c0 nt!IofCallDriver+0x13<BR>b959ec60 8092e81b 89cf3220 8895b2c0
8987f280 nt!IopSynchronousServiceTail+0x10b<BR>b959ed00 80940844 00000788
00000000 00000000 nt!IopXxxControlFile+0x5db<BR>b959ed34 80834d3f 00000788
00000000 00000000 nt!NtDeviceIoControlFile+0x2a<BR>b959ed34 7c82ed54 00000788
00000000 00000000 nt!KiFastCallEntry+0xfc<BR>0006f838 7c8213e4 77e416f1 00000788
00000000 ntdll!KiFastSystemCallRet<BR>0006f83c 77e416f1 00000788 00000000
00000000 ntdll!NtDeviceIoControlFile+0xc<BR>0006f8a0 00265210 00000788 003b0040
0006f9e4 kernel32!DeviceIoControl+0x137<BR>0006f8d0 002676bd 003b0040 0006f9e4
00000008 ibal!do_al_dev_ioctl+0x57 [s:\builds\1660\trunk\core\al\user\al_dll.c @
192]<BR>0006f9ec 00268203 00089318 002518d8 00089318 ibal!ual_close_ca+0xd3
[s:\builds\1660\trunk\core\al\user\ual_ca.c @ 236]<BR>0006fa04 00259ab0 00089318
0008932c 00089318 ibal!cleanup_ci_ca+0x4e
[s:\builds\1660\trunk\core\al\user\ual_ci_ca.c @ 328]<BR>0006fa1c 00259780
0008932c 00084f48 00084fac ibal!async_destroy_cb+0x98
[s:\builds\1660\trunk\core\al\al_common.c @ 661]<BR>0006fa30 002594a2 00089318
00000000 00000000 ibal!sync_destroy_obj+0xd7
[s:\builds\1660\trunk\core\al\al_common.c @ 548]<BR>0006fa50 002596ea 00084f48
00000000 00000000 ibal!destroy_obj+0x150
[s:\builds\1660\trunk\core\al\al_common.c @ 615]<BR>0006fa6c 0025b4a5 00084f48
00000000 00000000 ibal!sync_destroy_obj+0x41
[s:\builds\1660\trunk\core\al\al_common.c @ 488]<BR>0006fa84 0026d51a 77bd27c2
0006fb1c 004026bb ibal!al_cleanup+0xa3 [s:\builds\1660\trunk\core\al\al_init.c @
146]<BR>0006fa90 004026bb 0008a9d8 00000000 00000000 ibal!ib_close_al+0x39
[s:\builds\1660\trunk\core\al\user\ual_mgr.c @ 1106]<BR>0006fb1c 0100123b
0006fb38 00000400 ffffffff mtcr!mdevices+0xa1
[s:\builds\1660\trunk\tools\mft\user\mtcr\mtcr.c @ 473]<BR>0006ff3c 010012c5
0006ffc0 0100157b 00000002 mst!list_devices+0x2b
[s:\builds\1660\trunk\tools\mft\user\mst\mst.c @ 18]<BR>0006ff44 0100157b
00000002 002a24c0 002a2ac0 mst!main+0x28
[s:\builds\1660\trunk\tools\mft\user\mst\mst.c @ 41]<BR>0006ffc0 77e523cd
00000000 00000000 7ffde000 mst!mainCRTStartup+0x12f
[d:\dnsrv\base\crts\crtw32\dllstuff\crtexe.c @ 501]<BR>0006fff0 00000000
0100144c 00000000 78746341 kernel32!BaseProcessStart+0x23</DIV>
<DIV> </DIV>
<DIV><BR>STACK_COMMAND: kb</DIV>
<DIV> </DIV>
<DIV>FOLLOWUP_IP: <BR>ibbus!async_destroy_cb+da
[s:\builds\1660\trunk\core\al\al_common.c @ 675]<BR>b940b35a f605243042b902 test
byte ptr [ibbus!WPP_GLOBAL_Control+0x14 (b9423024)],0x2</DIV>
<DIV> </DIV>
<DIV>FAULTING_SOURCE_CODE: <BR> 671:
p_obj->user_destroy_cb( (void*)p_obj->context
);<BR> 672: }<BR> 673: <BR> 674:
/* Free the resources associated with the object. */<BR>> 675:
AL_PRINT( TRACE_LEVEL_INFORMATION, AL_DBG_AL_OBJ, ("freeing object\n" )
);<BR> 676: p_obj->pfn_free( p_obj );<BR> 677:
<BR> 678: /* Dereference the parent after freeing the child.
*/<BR> 679: if( p_parent_obj )<BR> 680:
deref_al_obj( p_parent_obj );</DIV>
<DIV> </DIV>
<DIV><BR>SYMBOL_STACK_INDEX: 7</DIV>
<DIV> </DIV>
<DIV>FOLLOWUP_NAME: MachineOwner</DIV>
<DIV> </DIV>
<DIV>SYMBOL_NAME: ibbus!async_destroy_cb+da</DIV>
<DIV> </DIV>
<DIV>MODULE_NAME: ibbus</DIV>
<DIV> </DIV>
<DIV>IMAGE_NAME: ibbus.sys</DIV>
<DIV> </DIV>
<DIV>DEBUG_FLR_IMAGE_TIMESTAMP: 44ffe561</DIV>
<DIV> </DIV>
<DIV>FAILURE_BUCKET_ID:
0x50_VRF_CODE_AV_BAD_IP_ibbus!async_destroy_cb+da</DIV>
<DIV> </DIV>
<DIV>BUCKET_ID: 0x50_VRF_CODE_AV_BAD_IP_ibbus!async_destroy_cb+da</DIV>
<DIV> </DIV>
<DIV>Followup: MachineOwner<BR></FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> Tillier, Fabian
[mailto:ftillier@silverstorm.com] <BR><B>Sent:</B> Tuesday, September 05, 2006
11:12 PM<BR><B>To:</B> Yossi Leybovich<BR><B>Subject:</B> RE: [Openib-windows]
srp blue screen when CM fail to connect<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=Section1>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Hi
Yossi,<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><BR>I hadn’t tried to
compile it for x86, no. I have a fix for this in my sandbox, though.
Can you verify that the ib_sync_destroy changes do work for you?
The only way you would crash during destruction is if the -1 pointer for
ib_sync_destroy was used as an actual function pointer. The patch I sent
addressed the issue, so I suspect the IBAL binary wasn’t updated. Let me
know and I’ll check in a patch that handles both x64 and
x86.<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">-
Fab<o:p></o:p></SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p> </o:p></SPAN></FONT></P>
<DIV
style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0in; BORDER-BOTTOM: medium none">
<DIV>
<DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT
face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">
<HR tabIndex=-1 align=center width="100%" SIZE=2>
</SPAN></FONT></DIV>
<P class=MsoNormal><B><FONT face=Tahoma size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT
face=Tahoma size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"> Yossi
Leybovich [mailto:sleybo@mellanox.co.il] <BR><B><SPAN
style="FONT-WEIGHT: bold">Sent:</SPAN></B> Monday, September 04, 2006 1:11
AM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B> Tillier,
Fabian<BR><B><SPAN style="FONT-WEIGHT: bold">Subject:</SPAN></B> RE:
[Openib-windows] srp blue screen when CM fail to
connect</SPAN></FONT><o:p></o:p></P></DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P>
<P><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"> </SPAN></FONT>
<o:p></o:p></P>
<P><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> -----Original
Message-----</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> From: ftillier.sst@gmail.com
[</SPAN></FONT><A href="mailto:ftillier.sst@gmail.com"><FONT face=Arial
size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">mailto:ftillier.sst@gmail.com</SPAN></FONT></A><FONT
face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">]
</SPAN></FONT><BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> On Behalf Of Fabian
Tillier</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> Sent: Saturday, September 02,
2006 2:04 AM</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> To: Yossi
Leybovich</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> Cc: <st1:PersonName
w:st="on">openib-windows@openib.org</st1:PersonName></SPAN></FONT> <BR><FONT
face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">>
Subject: Re: [Openib-windows] srp blue screen when CM fail to
connect</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> </SPAN></FONT><BR><FONT
face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> Hi
Yossi,</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> </SPAN></FONT><BR><FONT
face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> On
8/31/06, Yossi Leybovich <sleybo@mellanox.co.il> wrote:</SPAN></FONT>
<BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> ></SPAN></FONT> <BR><FONT
face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> >
Fab</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> > I got blue screen while
trying to bring our SRP target up.</SPAN></FONT> <BR><FONT face=Arial
size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">>
</SPAN></FONT><BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> I have a fix, but I don't
quite understand why it makes the </SPAN></FONT><BR><FONT face=Arial
size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> problem go
away. I didn't find any double free issues in the
</SPAN></FONT><BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> code, but did take the
opportunity to clean up the code a little.</SPAN></FONT> <BR><FONT face=Arial
size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">>
</SPAN></FONT><BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> Since I don't quite
understand why it works now, I didn't </SPAN></FONT><BR><FONT face=Arial
size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> check the
changes in. Instead the patch is attached - please
</SPAN></FONT><BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">> give it a shot and let me
know if you see the previous bug.</SPAN></FONT> <BR><FONT face=Arial
size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">>
</SPAN></FONT><o:p></o:p></P>
<P><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Did you try to copile this to 32
bit ?</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">I got</SPAN></FONT> <FONT
face=Arial size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">2 errors
:</SPAN></FONT> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">1. </SPAN></FONT><BR><B><FONT
face=Arial size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">2>errors in
directory w:\work\latest\core\al\kernel</SPAN></FONT></B> <BR><B><FONT
face=Arial size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">2>inc\iba\ib_al.h(436)
: error C2220: warning treated as error - no object file
generated</SPAN></FONT></B> <BR><B><FONT face=Arial size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">2>inc\iba\ib_al.h(436)
: error C4306: 'type cast' : conversion from 'LONG_PTR' to
'ib_pfn_destroy_cb_t' o</SPAN></FONT></B> <BR><B><FONT face=Arial size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">f greater
size</SPAN></FONT></B> <BR><FONT face=Arial size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">2.</SPAN></FONT> <BR><B><FONT
face=Arial size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">100>errors
in directory w:\work\latest\core\al\user</SPAN></FONT></B> <BR><B><FONT
face=Arial size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">100>al_exports.def
: error LNK2001: unresolved external symbol ib_sync_destroy</SPAN></FONT></B>
<BR><B><FONT face=Arial size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">100>wbin\user\objchk_wnet_x86\i386\ibald.lib
: error LNK1120: 1 unresolved externals</SPAN></FONT></B> <o:p></o:p></P>
<P class=MsoNormal style="MARGIN-BOTTOM: 12pt"><FONT face="Times New Roman"
size=3><SPAN
style="FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P></DIV></DIV></BLOCKQUOTE></BODY></HTML>