<!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.2900.3243" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=686440821-27042009>I
guess, yes.</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=686440821-27042009>Thank
you for reminding.</SPAN></FONT></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> Smith, Stan
[mailto:stan.smith@intel.com] <BR><B>Sent:</B> Tuesday, April 28, 2009 12:07
AM<BR><B>To:</B> Leonid Keller; ofw@lists.openfabrics.org<BR><B>Subject:</B>
RE: [ofw][patch][ibal] fix memory leak on power down/power up
flow<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV dir=ltr align=left><SPAN class=859130521-27042009><FONT face=Arial
color=#0000ff size=2>Hello,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=859130521-27042009><FONT face=Arial
color=#0000ff size=2> Is there also a similar hibernate memory leak
issue in bus_iou_mgr.c in iou_mgr_iou_remove() around label
'xit:'?</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=859130521-27042009><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=859130521-27042009><FONT face=Arial
color=#0000ff size=2>stan.</FONT></SPAN></DIV><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> ofw-bounces@lists.openfabrics.org
[mailto:ofw-bounces@lists.openfabrics.org] <B>On Behalf Of </B>Leonid
Keller<BR><B>Sent:</B> Saturday, April 25, 2009 12:07 PM<BR><B>To:</B>
ofw@lists.openfabrics.org<BR><B>Subject:</B> [ofw][patch][ibal] fix memory
leak on power down/power up flow<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV><FONT face=Arial><FONT size=2>port_mgr_port_add<SPAN
class=723094918-25042009>() allocates a port_pnp_ctx_t context, which is saved
by IBAL to be used later in port_mgr_port_remove().</SPAN></FONT></FONT></DIV>
<DIV><FONT face=Arial><FONT size=2><SPAN class=723094918-25042009>But in
hibernation flow port_mgr_port_remove() doesn't release this context which
causes IBBUS memory leak.</SPAN></FONT></FONT></DIV>
<DIV><FONT face=Arial><FONT size=2><SPAN class=723094918-25042009>It was
trapped by Verifier during WHQL Common Scenario Stress
test.</SPAN></FONT></FONT></DIV>
<DIV><FONT face=Arial><FONT size=2><SPAN
class=723094918-25042009></SPAN></FONT></FONT> </DIV>
<DIV><FONT face=Arial><FONT size=2><SPAN class=723094918-25042009>The below
patch fixes that.</SPAN></FONT></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Index:
core/bus/kernel/bus_port_mgr.c<BR>===================================================================<BR>---
core/bus/kernel/bus_port_mgr.c (revision 2132)<BR>+++
core/bus/kernel/bus_port_mgr.c (working copy)<BR>@@ -1269,11 +1268,11
@@<BR> IoInvalidateDeviceRelations(<BR> p_ext->h_ca->p_hca_dev,
BusRelations );<BR> <BR>+hca_deref:<BR> /* Free PNP context
memory */<BR> cl_free( p_ctx
);<BR> p_pnp_rec->pnp_rec.context =
NULL;<BR> <BR>-hca_deref:<BR> deref_al_obj(
&p_ext->h_ca->obj );<BR> <BR> // Setting
h_ca to be NULL forces IPoIB to start only after re-acquiring new CA
object<BR></DIV></BLOCKQUOTE></FONT></BODY></HTML>