<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"Lucida Console";
        panose-1:2 11 6 9 4 5 4 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";
        mso-fareast-language:EN-AU;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-AU" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Hi Zeus,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">This doesn&#8217;t make much sense to me&#8230; the part where they bind to each other is at the very end of your log:<o:p></o:p></span></p>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_ump_client_request<o:p></o:p></p>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_ump_client_request<o:p></o:p></p>
<p class="MsoNormal">monitor.0: lmp TX monitor.bind_ump_service_request<o:p></o:p></p>
<p class="MsoNormal">bulktest.0: lmp RX monitor.bind_ump_service_request<o:p></o:p></p>
<p class="MsoNormal">bulktest.0: service got a connection!<o:p></o:p></p>
<p class="MsoNormal">bulktest.0: lmp TX monitor.bind_ump_reply_monitor<o:p></o:p></p>
<p class="MsoNormal">monitor.0: lmp RX monitor.bind_ump_reply_monitor<o:p></o:p></p>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_ump_reply_client<o:p></o:p></p>
<p class="MsoNormal">bulktest.0: START<o:p></o:p></p>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_ump_reply_client<o:p></o:p></p>
<p class="MsoNormal">bulktest.1: 0x804e3020 client bound!<o:p></o:p></p>
<p class="MsoNormal">bulktest.1: START<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&#8230; at this point, I would expect at least one of them to request the monitor for an out-of-band cap transfer, but apparently that never happens?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Since you seem to have a workaround, I will try to reconstruct a test case for this after the OSDI deadline and debug it at this end.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Andrew
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> zeus@aluzina.org [mailto:zeus@aluzina.org]
<b>On Behalf Of </b>Zeus Gómez Marmolejo<br>
<b>Sent:</b> Monday, 23 April 2012 07:10<br>
<b>To:</b> Baumann Andrew<br>
<b>Cc:</b> barrelfish-users@lists.inf.ethz.ch<br>
<b>Subject:</b> Re: [Barrelfish-users] Bidirectional bulk transfer<o:p></o:p></span></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<p class="MsoNormal">Ok,&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">I tried to circunvent it by not sending the caps at the same time... With the NULL_CAP still not working... Here is the output with FLOUNDER_DEBUG set to 1 on the monitor binding and the bulktest:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">zeus.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">spawnd.1: spawning /x86_64/sbin/bulktest on core 1<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.0: lmp TX monitor.alloc_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.get_monitor_rpc_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.alloc_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.get_monitor_rpc_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp TX monitor.alloc_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.get_monitor_rpc_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.0: lmp RX monitor.alloc_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.get_monitor_rpc_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.0: service exported at iref 21<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.get_mem_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.get_mem_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.get_mem_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.get_mem_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.new_monitor_binding_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.new_monitor_binding_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.new_monitor_binding_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.new_monitor_binding_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp TX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp RX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.get_name_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.get_name_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.get_name_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.get_name_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.new_monitor_binding_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.new_monitor_binding_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.new_monitor_binding_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.new_monitor_binding_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp TX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">chips.0: lmp RX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">chips.0: lmp TX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.alloc_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.alloc_iref_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.alloc_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.alloc_iref_reply<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp TX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">serial.0: lmp RX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">serial.0: lmp TX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: client looking up 'bulktest' in name service...<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: client binding request to 21...<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_lmp_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_lmp_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">mem_serv.0: lmp TX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.cap_send_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.cap_receive_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp TX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp RX monitor.bind_ump_client_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp TX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.0: lmp RX monitor.bind_ump_service_request<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.0: service got a connection!<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.0: lmp TX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.0: lmp RX monitor.bind_ump_reply_monitor<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">monitor.1: lmp TX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.0: START<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: lmp RX monitor.bind_ump_reply_client<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: 0x804e3020 client bound!<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">bulktest.1: START<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">Here the output stops...<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<p class="MsoNormal">El 23 de abril de 2012 06:13, Baumann Andrew &lt;<a href="mailto:andrewb@inf.ethz.ch" target="_blank">andrewb@inf.ethz.ch</a>&gt; escribió:<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Hi Zeus,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Sorry, I&#8217;ve been busy with a deadline and dropped the ball on this one. Did you track down where
 it hangs? Which messages are sent and received when it hangs? Does it still hang if you just send a NULL_CAP instead of the frame cap?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">If you can make the code as simple as possible, then compile the following files with FLOUNDER_DEBUG
 defined to 1, and send me the output from your program, I may be able to make some sense of it.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">x86_64/lib/barrelfish/_for_lib_barrelfish/monitor_flounder_extra_bindings.c</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">x86_64/usr/&#8230;/bulktest/_for_app_bulktest/bulkbench_flounder_bindings.c</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Thanks,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Andrew</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">
<a href="mailto:zeus@aluzina.org" target="_blank">zeus@aluzina.org</a> [mailto:<a href="mailto:zeus@aluzina.org" target="_blank">zeus@aluzina.org</a>]
<b>On Behalf Of </b>Zeus Gómez Marmolejo<br>
<b>Sent:</b> Wednesday, 18 April 2012 04:56</span><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><br>
<b>To:</b> Baumann Andrew<br>
<b>Cc:</b> <a href="mailto:barrelfish-users@lists.inf.ethz.ch" target="_blank">barrelfish-users@lists.inf.ethz.ch</a><br>
<b>Subject:</b> Re: [Barrelfish-users] Bidirectional bulk transfer<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">mmm<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">it's interesting. You are right. If we remove all the bulk transport it also hangs... But it only happens if both of them are sending the cap. If only server or client sends it,
 it goes well...<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">zeus.<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">El 17 de abril de 2012 20:39, Baumann Andrew &lt;<a href="mailto:andrewb@inf.ethz.ch" target="_blank">andrewb@inf.ethz.ch</a>&gt; escribió:<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Hi,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Let&#8217;s try to make this as simple as possible. What happens if you remove all the bulk transport stuff
 and just call frame_alloc() on each side and send the cap? Do both caps arrive? Do the replies make it back? I&#8217;d like to understand more of the state of the system when it wedges&#8230;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Thanks,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Andrew</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">
<a href="mailto:zeus@aluzina.org" target="_blank">zeus@aluzina.org</a> [mailto:<a href="mailto:zeus@aluzina.org" target="_blank">zeus@aluzina.org</a>]
<b>On Behalf Of </b>Zeus Gómez Marmolejo<br>
<b>Sent:</b> Tuesday, 17 April 2012 11:36<br>
<b>To:</b> Baumann Andrew<br>
<b>Cc:</b> <a href="mailto:barrelfish-users@lists.inf.ethz.ch" target="_blank">barrelfish-users@lists.inf.ethz.ch</a><br>
<b>Subject:</b> Re: [Barrelfish-users] Bidirectional bulk transfer</span><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hey Andrew,<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Yes, sorry, I was building the easy example quite fast, I forgot that. In any case if you change the line<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">while(!request_done) {<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">by<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">while(1) {<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">the result is the same. Messages are not being delivered.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">zeus.<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">El 17 de abril de 2012 19:27, Baumann Andrew &lt;<a href="mailto:andrewb@inf.ethz.ch" target="_blank">andrewb@inf.ethz.ch</a>&gt; escribió:<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Hi Zeus,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Perhaps this is a bug arising only from over-simplification in the example, but it looks to me like
 the problem is here:</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; request_done = false;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; while (!request_done) {</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; event_dispatch(get_default_waitset());</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; }</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;debug_printf(&quot;DONE\n&quot;);</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp; </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;text-autospace:none">
<span style="font-size:10.0pt;font-family:&quot;Lucida Console&quot;">&nbsp;&nbsp;&nbsp;&nbsp;return 0;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Whenever either server or client sees their request completed they exit. There is no guarantee that
 they have seen and responded to the other side&#8217;s request. If you instead loop while (1), does the problem still arise?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Andrew</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> Zeus
 Gómez Marmolejo [mailto:<a href="mailto:zeus.gomez@bsc.es" target="_blank">zeus.gomez@bsc.es</a>]
<br>
<b>Sent:</b> Tuesday, 17 April 2012 08:59<br>
<b>To:</b> <a href="mailto:barrelfish-users@lists.inf.ethz.ch" target="_blank">barrelfish-users@lists.inf.ethz.ch</a><br>
<b>Subject:</b> [Barrelfish-users] Bidirectional bulk transfer</span><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hi,<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I'm currently testing the bulk transfer implementation and I'm having some issues. As I want to be able to send from core 0 to core 1 and from 1 to 0 large amounts of data, I'm
 creating two bulk memory regions. One master to core 0 and another master to core 1. When creating this link there are two caprefs sent, one from core 0 to 1 and the other on the opposite way. In this case, the test hangs. When there is only one being sent,
 the example works well.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Do you have any clues about this? I attach the example.<br clear="all">
<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">-- <br>
Zeus Gómez Marmolejo<br>
Barcelona Supercomputing Center<br>
PhD student<br>
<a href="http://www.bsc.es" target="_blank">http://www.bsc.es</a><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><br>
<br clear="all">
<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">-- <br>
Zeus Gómez Marmolejo<br>
Barcelona Supercomputing Center<br>
PhD student<br>
<a href="http://www.bsc.es" target="_blank">http://www.bsc.es</a><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><br>
<br clear="all">
<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">&nbsp;<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt">-- <br>
Zeus Gómez Marmolejo<br>
Barcelona Supercomputing Center<br>
PhD student<br>
<a href="http://www.bsc.es" target="_blank">http://www.bsc.es</a><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><br>
<br clear="all">
<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">-- <br>
Zeus Gómez Marmolejo<br>
Barcelona Supercomputing Center<br>
PhD student<br>
<a href="http://www.bsc.es" target="_blank">http://www.bsc.es</a><br>
<br>
<o:p></o:p></p>
</div>
</div>
</body>
</html>