<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/infiniband/core, branch linux-2.6.20.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.20.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.20.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2007-01-08T04:20:08Z</updated>
<entry>
<title>RDMA/ucma: Don't report events with invalid user context</title>
<updated>2007-01-08T04:20:08Z</updated>
<author>
<name>Sean Hefty</name>
</author>
<published>2007-01-05T20:35:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0cefcf0bbc2d252eb48bff3289fb59c3817dd405'/>
<id>urn:sha1:0cefcf0bbc2d252eb48bff3289fb59c3817dd405</id>
<content type='text'>
There's a problem with how rdma cm events are reported to userspace
that can lead to application crashes.

When a new connection request arrives, a context for the connection is
allocated in the kernel.  The connection event is then reported to
userspace.  The userspace library retrieves the event and allocates
its own context for the connection.  The userspace context is
associated with the kernel's context when accepting.  This allows the
kernel to give userspace context with other events.

A problem occurs if a second event for the same connection occurs
before the user has had a chance to call accept.  The userspace
context has not yet been set, which causes the librdmacm to crash.
(This has been seen when the app takes too long to call accept,
resulting in the remote side timing out and rejecting the connection)

Fix this by ignoring events for new connections until userspace has
set their context.  This can only happen if an error occurs on a new
connection before the user accepts it.  This is okay, since the accept
will just fail later.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;
</content>
</entry>
<entry>
<title>RDMA/ucma: Fix struct ucma_event leak when backlog is full</title>
<updated>2007-01-08T04:17:34Z</updated>
<author>
<name>Sean Hefty</name>
</author>
<published>2006-12-14T19:22:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=30a5ec982e4cfa955f93c454debaefc4d61d2da6'/>
<id>urn:sha1:30a5ec982e4cfa955f93c454debaefc4d61d2da6</id>
<content type='text'>
We discard new connection requests while the listen backlog is full,
but leak a struct ucma_event in the process.  Free the structure in
this case.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;
</content>
</entry>
<entry>
<title>RDMA/iwcm: iWARP connection timeouts shouldn't be reported as rejects</title>
<updated>2007-01-08T04:15:58Z</updated>
<author>
<name>Steve Wise</name>
</author>
<published>2006-12-15T22:50:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=881a045fc5b454b57c69e010acecd5830d87e242'/>
<id>urn:sha1:881a045fc5b454b57c69e010acecd5830d87e242</id>
<content type='text'>
The iWARP CM should report timeouts as event RDMA_CM_EVENT_UNREACHABLE,
not event RDMA_CM_EVENT_REJECTED.

Signed-off-by: Steve Wise &lt;swise@opengridcomputing.com&gt;
Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;
</content>
</entry>
<entry>
<title>IB/core: Use the new verbs DMA mapping functions</title>
<updated>2006-12-12T22:28:30Z</updated>
<author>
<name>Ralph Campbell</name>
</author>
<published>2006-12-12T22:28:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1527106ff8cf6afb15f68c8820605a0d32263173'/>
<id>urn:sha1:1527106ff8cf6afb15f68c8820605a0d32263173</id>
<content type='text'>
Convert code in core/ to use the new DMA mapping functions for kernel
verbs consumers.

Signed-off-by: Ralph Campbell &lt;ralph.campbell@qlogic.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;
</content>
</entry>
<entry>
<title>RDMA/cma: Export rdma cm interface to userspace</title>
<updated>2006-12-12T19:50:22Z</updated>
<author>
<name>Sean Hefty</name>
</author>
<published>2006-12-01T00:53:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=75216638572f53612304c05a374f0246fe1d16da'/>
<id>urn:sha1:75216638572f53612304c05a374f0246fe1d16da</id>
<content type='text'>
Export the rdma cm interfaces to userspace via a misc device.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;
</content>
</entry>
<entry>
<title>RDMA/cma: Add support for RDMA_PS_UDP</title>
<updated>2006-12-12T19:50:21Z</updated>
<author>
<name>Sean Hefty</name>
</author>
<published>2006-12-01T00:44:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=628e5f6d39d5a6be96c1272a6709f2dd3ec8b7ce'/>
<id>urn:sha1:628e5f6d39d5a6be96c1272a6709f2dd3ec8b7ce</id>
<content type='text'>
Allow the use of UD QPs through the rdma_cm, in order to provide
address translation services for resolving IB addresses for datagram
messages using SIDR.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;

</content>
</entry>
<entry>
<title>RDMA/cma: Allow early transition to RTS to handle lost CM messages</title>
<updated>2006-12-12T19:50:21Z</updated>
<author>
<name>Sean Hefty</name>
</author>
<published>2006-12-01T00:37:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0fe313b000b6a699afbbb59ef9c47a2b22146f1e'/>
<id>urn:sha1:0fe313b000b6a699afbbb59ef9c47a2b22146f1e</id>
<content type='text'>
During connection establishment, the passive side of a connection can
receive messages from the active side before the connection event has
been delivered to the user.  Allow the passive side to send messages
in response to received data before the event is delivered.  To handle
the case where the connection messages are lost, a new rdma_notify()
function is added that users may invoke to force a connection into the
established state.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;

</content>
</entry>
<entry>
<title>RDMA/cma: Report connect info with connect events</title>
<updated>2006-12-12T19:50:21Z</updated>
<author>
<name>Sean Hefty</name>
</author>
<published>2006-12-01T00:33:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a1b1b61f80aba49f1e0f32b0e4b1c35be91c57fa'/>
<id>urn:sha1:a1b1b61f80aba49f1e0f32b0e4b1c35be91c57fa</id>
<content type='text'>
Connection information was never given to the recipient of a
connection request or reply message.  Only the event was delivered.
Report the connection data with the event to allows user to
reject the connection based on the requested parameters, or adjust
their resources to match the request.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;

</content>
</entry>
<entry>
<title>RDMA/cma: Remove unneeded qp_type parameter from rdma_cm</title>
<updated>2006-12-12T19:50:21Z</updated>
<author>
<name>Sean Hefty</name>
</author>
<published>2006-12-01T00:30:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9b2e9c0c241e532d923fff23d9a7c0bd31bd96b1'/>
<id>urn:sha1:9b2e9c0c241e532d923fff23d9a7c0bd31bd96b1</id>
<content type='text'>
The qp_type parameter into the rdma_cm is unneeded, and can be
misleading.  The QP type should be determined from the port space.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;

</content>
</entry>
<entry>
<title>IB/fmr: ib_flush_fmr_pool() may wait too long</title>
<updated>2006-12-12T19:50:19Z</updated>
<author>
<name>Roland Dreier</name>
</author>
<published>2006-12-12T19:50:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f47e22c6e4225f40e0dd662398e2cb204f6ec8ed'/>
<id>urn:sha1:f47e22c6e4225f40e0dd662398e2cb204f6ec8ed</id>
<content type='text'>
ib_flush_fmr_pool() stashes away the request generation number
properly, but then goes ahead and rereads it every time it tests
whether the flush generation number has caught up.  This means that
there is a theoretical possibility of livelock, if the request
generation number keeps getting bumped and the flush generation number
never catches up.  The fix is simple: use the request generation
number read at the beginning of the function.

Also, atomic_inc() followed by atomic_read() can be replaced with
atomic_int_return().  There's no real requirement for atomicity here
but we might as well shrink the code.

This bug was discovered using David Binderman's list of "set but never
used" warnings from icc.

Signed-off-by: Roland Dreier &lt;rolandd@cisco.com&gt;
</content>
</entry>
</feed>
