<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=US-ASCII">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2654.45">
<TITLE>RE: [openib-general] Question about pinning memory</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>Answers regarding VAPI:</FONT>
</P>

<P><FONT SIZE=2>> > Related to the scenario above, here's my questions:</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > 1. What happens if pinned memory is returned to the OS via sbrk()?  Do </FONT>
<BR><FONT SIZE=2>> > Bad Things happen, or does the kernel portion of Open IB handle this </FONT>
<BR><FONT SIZE=2>> > gracefully?</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> Kernel portion of OpenIB pins physical pages. If you unmap virtual </FONT>
<BR><FONT SIZE=2>> address range from process address space using sbrk or munmap they will </FONT>
<BR><FONT SIZE=2>> stay pinned until deregistered.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> > (if anyone knows what mVAPI does here, that would also be really useful </FONT>
<BR><FONT SIZE=2>> > to know)</FONT>
</P>

<P><FONT SIZE=2>VAPI behaves the same as openib in this case.</FONT>
</P>

<P><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > 2. What happens if the MPI unpins memory that is already out of the </FONT>
<BR><FONT SIZE=2>> > process?  Do Bad Things happen, or does Open IB handle this gracefully?</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> OpenIB should handle this case. It looks up pinned physical pages using</FONT>
<BR><FONT SIZE=2>> memory handle returned on register and unpins them. It doesn't scan user</FONT>
<BR><FONT SIZE=2>> virtual space during dereg.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> > (if anyone knows what mVAPI does here, that would also be really useful </FONT>
<BR><FONT SIZE=2>> > to know)</FONT>
<BR><FONT SIZE=2>> > </FONT>
</P>

<P><FONT SIZE=2>VAPI free the pinned memory and issue a message in /var/log/messages, and everything is working well.</FONT>
</P>

<P><FONT SIZE=2>Tziporet</FONT>
</P>

</BODY>
</HTML>