<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openslx-ng/ipxe.git/src/net/infiniband/ib_cmrc.c, branch openslx</title>
<subtitle>Fork of ipxe; additional commands and features</subtitle>
<id>https://git.openslx.org/openslx-ng/ipxe.git/atom/src/net/infiniband/ib_cmrc.c?h=openslx</id>
<link rel='self' href='https://git.openslx.org/openslx-ng/ipxe.git/atom/src/net/infiniband/ib_cmrc.c?h=openslx'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/'/>
<updated>2017-03-22T09:18:02+00:00</updated>
<entry>
<title>[infiniband] Return status code from ib_create_cq() and ib_create_qp()</title>
<updated>2017-03-22T09:18:02+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-03-22T08:47:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=39ef530088859ccbbcf29bf6af2cf9f0307dc476'/>
<id>urn:sha1:39ef530088859ccbbcf29bf6af2cf9f0307dc476</id>
<content type='text'>
Any underlying errors arising during ib_create_cq() or ib_create_qp()
are lost since the functions simply return NULL on error.  This makes
debugging harder, since a debug-enabled build is required to discover
the root cause of the error.

Fix by returning a status code from these functions, thereby allowing
any underlying errors to be propagated.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Assign names to queue pairs</title>
<updated>2016-03-08T15:51:53+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2016-03-08T15:48:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=6a3ffa0114411ae4aa6c4485c6058bf03fec3623'/>
<id>urn:sha1:6a3ffa0114411ae4aa6c4485c6058bf03fec3623</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Assign names to CMRC connections</title>
<updated>2016-03-08T15:51:19+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2016-03-08T15:34:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=174bf6b5698299678f2d928cae126353558a766d'/>
<id>urn:sha1:174bf6b5698299678f2d928cae126353558a766d</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Use connection's local ID as debug message identifier</title>
<updated>2016-03-08T12:08:58+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2016-03-03T18:09:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=8336186564dc7489de55fe16e0c050844e6665d6'/>
<id>urn:sha1:8336186564dc7489de55fe16e0c050844e6665d6</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Use "%#lx" as format specifier for queue pair numbers</title>
<updated>2016-03-08T12:08:58+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2016-03-08T09:06:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=7aef4d4c9412ad30f850e7fb1a33554ce8a97b00'/>
<id>urn:sha1:7aef4d4c9412ad30f850e7fb1a33554ce8a97b00</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Avoid multiple calls to ib_cmrc_shutdown()</title>
<updated>2016-03-08T12:07:03+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2016-03-02T09:29:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=7544763626d67b352d4b1440336080d63c0be0b7'/>
<id>urn:sha1:7544763626d67b352d4b1440336080d63c0be0b7</id>
<content type='text'>
When a CMRC connection is closed, the deferred shutdown process calls
ib_destroy_qp().  This will cause the receive work queue entries to
complete in error (since they are being cancelled), which will in turn
reschedule the deferred shutdown process.  This eventually leads to
ib_destroy_conn() being called on a connection that has already been
freed.

Fix by explicitly cancelling any pending shutdown process after the
shutdown process has completed.

Ironically, this almost exactly reverts commit 019d4c1 ("[infiniband]
Use a one-shot process for CMRC shutdown"); prior to the introduction
of one-shot processes the only way to achieve a one-shot process was
for the process to cancel itself.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Include destination address vector in ib_complete_recv()</title>
<updated>2012-08-31T20:22:58+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2012-08-31T00:48:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=f54a61e43450fae7d045bebabc4c368d325e71d3'/>
<id>urn:sha1:f54a61e43450fae7d045bebabc4c368d325e71d3</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Use explicit "source" and "dest" address vector parameter names</title>
<updated>2012-08-31T20:22:58+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2012-08-30T23:47:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=cbe41cb31be10edc234e96cf4291245c21272a57'/>
<id>urn:sha1:cbe41cb31be10edc234e96cf4291245c21272a57</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Allow queue pairs to have a custom allocator for receive iobufs</title>
<updated>2012-08-31T20:22:57+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2012-08-29T21:11:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=f747fac3e1dad31378579326d8e9dce0df85c214'/>
<id>urn:sha1:f747fac3e1dad31378579326d8e9dce0df85c214</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[infiniband] Use a one-shot process for CMRC shutdown</title>
<updated>2011-06-28T13:45:11+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2011-06-24T16:21:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=019d4c1c1895a672ced583b972b256cd978a6b9f'/>
<id>urn:sha1:019d4c1c1895a672ced583b972b256cd978a6b9f</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
</feed>
