<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">For the immediate future, I think I can work around not having readfrom by exchanging some local 64-bit context information as the parameters for connect and accept.  Then, change fi_send calls to fi_senddata and provide the remote’s context as the data.  This will provide an easy way to map an incoming message to a local context.  <div class=""><br class=""></div><div class="">Longer term, it seems we could really use another fi_cq_readfrom() specific to connected endpoints.  Rather than return an fi_addr_t, it should return a fid_ep pointer.  It would be great to extend fi_cq_readfrom() with an extra parameter, but that would break existing code so perhaps creating a new call would be best.  Something like:</div><div class=""><br class=""></div><div class=""><pre class="highlight" style="padding: 9.5px; font-family: Monaco, Menlo, Consolas, "Courier New", monospace; font-size: 13px; color: rgb(51, 51, 51); border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; margin-top: 0px; margin-bottom: 10px; line-height: 20px; word-break: break-all; word-wrap: break-word; white-space: pre-wrap; background-color: rgb(255, 255, 255); border: 1px solid rgba(0, 0, 0, 0.14902); caret-color: rgb(51, 51, 51);"><code style="padding: 0px; font-family: Monaco, Menlo, Consolas, "Courier New", monospace; font-size: 12px; color: inherit; border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; background-color: transparent; border: 0px;" class=""><span class="kt" style="color: rgb(68, 85, 136); font-weight: bold;">ssize_t</span> <span class="n">fi_cq_readfromconn</span><span class="p">(</span><span class="k" style="font-weight: bold;">struct</span> <span class="n">fid_cq</span> <span class="o" style="font-weight: bold;">*</span><span class="n">cq</span><span class="p">,</span> <span class="kt" style="color: rgb(68, 85, 136); font-weight: bold;">void</span> <span class="o" style="font-weight: bold;">*</span><span class="n">buf</span><span class="p">,</span> <span class="kt" style="color: rgb(68, 85, 136); font-weight: bold;">size_t</span> <span class="n">count</span><span class="p">,</span>
    <span class="n">struct fid_eq</span> *<span class="o" style="font-weight: bold;">*</span><span class="n">src_ep</span><span class="p">);</span></code></pre><div class="">The local context could be retrieved from the context of the src_ep’s.  </div><div class=""><br class=""></div><div class="">Did you want me to create an issue on this to track it?</div><div class=""><br class=""></div><div class="">Doug</div><div class=""><br class=""></div><div><br class=""><blockquote type="cite" class=""><div class="">On Sep 9, 2019, at 11:00 AM, Hefty, Sean <<a href="mailto:sean.hefty@intel.com" class="">sean.hefty@intel.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class=""><blockquote type="cite" class="">It seems to me that using a Shared Rx context and 1 CQ with connected endpoints is very<br class="">much like running connectionless: when a message is received, I cannot see an obvious<br class="">way to determine the source of the message.  The CQ entry does not have the endpoint in<br class="">it and I cannot get AVs to work with the TCP or verbs provider (thus I cannot use<br class="">fi_cq_readfrom).<br class=""></blockquote><br class="">I agree - this is an issue.<br class=""><br class=""><br class=""><blockquote type="cite" class="">Is there an easy way to determine the source address/endpoint of a received message in<br class="">this scenario?  Would it make sense to include the ep fid in the CQ entry to help?<br class=""></blockquote><br class="">Some sort of extension is needed here.  I'm not sure what the best answer is.  IMO, the ideal solution would make use of fi_cq_readfrom(), so that the source data is reported the same way regardless of EP type.  I just don't see a clean way to do this off the top of my head.<br class=""><br class="">- Sean<br class=""></div></div></blockquote></div><br class=""></div></body></html>