<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net/rds, branch v2.6.30.3</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/net/rds?h=v2.6.30.3</id>
<link rel='self' href='https://git.amat.us/linux/atom/net/rds?h=v2.6.30.3'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2009-04-22T02:39:59Z</updated>
<entry>
<title>FRV: Fix the section attribute on UP DECLARE_PER_CPU()</title>
<updated>2009-04-22T02:39:59Z</updated>
<author>
<name>David Howells</name>
<email>dhowells@redhat.com</email>
</author>
<published>2009-04-21T22:00:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9b8de7479d0dbab1ed98b5b015d44232c9d3d08e'/>
<id>urn:sha1:9b8de7479d0dbab1ed98b5b015d44232c9d3d08e</id>
<content type='text'>
In non-SMP mode, the variable section attribute specified by DECLARE_PER_CPU()
does not agree with that specified by DEFINE_PER_CPU().  This means that
architectures that have a small data section references relative to a base
register may throw up linkage errors due to too great a displacement between
where the base register points and the per-CPU variable.

On FRV, the .h declaration says that the variable is in the .sdata section, but
the .c definition says it's actually in the .data section.  The linker throws
up the following errors:

kernel/built-in.o: In function `release_task':
kernel/exit.c:78: relocation truncated to fit: R_FRV_GPREL12 against symbol `per_cpu__process_counts' defined in .data section in kernel/built-in.o
kernel/exit.c:78: relocation truncated to fit: R_FRV_GPREL12 against symbol `per_cpu__process_counts' defined in .data section in kernel/built-in.o

To fix this, DECLARE_PER_CPU() should simply apply the same section attribute
as does DEFINE_PER_CPU().  However, this is made slightly more complex by
virtue of the fact that there are several variants on DEFINE, so these need to
be matched by variants on DECLARE.

Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>RDS: Use spinlock to protect 64b value update on 32b archs</title>
<updated>2009-04-02T07:52:22Z</updated>
<author>
<name>Andy Grover</name>
<email>andy.grover@oracle.com</email>
</author>
<published>2009-04-01T08:20:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437'/>
<id>urn:sha1:8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437</id>
<content type='text'>
We have a 64bit value that needs to be set atomically.
This is easy and quick on all 64bit archs, and can also be done
on x86/32 with set_64bit() (uses cmpxchg8b). However other
32b archs don't have this.

I actually changed this to the current state in preparation for
mainline because the old way (using a spinlock on 32b) resulted in
unsightly #ifdefs in the code. But obviously, being correct takes
precedence.

Signed-off-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>RDS: Rewrite connection cleanup, fixing oops on rmmod</title>
<updated>2009-04-02T07:52:22Z</updated>
<author>
<name>Andy Grover</name>
<email>andy.grover@oracle.com</email>
</author>
<published>2009-04-01T08:20:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=745cbccac3fe8cead529a1b3358e1e86a1505bfa'/>
<id>urn:sha1:745cbccac3fe8cead529a1b3358e1e86a1505bfa</id>
<content type='text'>
This fixes a bug where a connection was unexpectedly
not on *any* list while being destroyed. It also
cleans up some code duplication and regularizes some
function names.

* Grab appropriate lock in conn_free() and explain in comment
* Ensure via locking that a conn is never not on either
  a dev's list or the nodev list
* Add rds_xx_remove_conn() to match rds_xx_add_conn()
* Make rds_xx_add_conn() return void
* Rename remove_{,nodev_}conns() to
  destroy_{,nodev_}conns() and unify their implementation
  in a helper function
* Document lock ordering as nodev conn_lock before
  dev_conn_lock

Reported-by: Yosef Etigin &lt;yosefe@voltaire.com&gt;
Signed-off-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>RDS: Fix m_rs_lock deadlock</title>
<updated>2009-04-02T07:52:21Z</updated>
<author>
<name>Andy Grover</name>
<email>andy.grover@oracle.com</email>
</author>
<published>2009-04-01T08:20:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f1cffcbfcc53b825da7d1d26244aabd8dccb24aa'/>
<id>urn:sha1:f1cffcbfcc53b825da7d1d26244aabd8dccb24aa</id>
<content type='text'>
rs_send_drop_to() is called during socket close. If it takes
m_rs_lock without disabling interrupts, then
rds_send_remove_from_sock() can run from the rx completion
handler and thus deadlock.

Signed-off-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>rds: fix iband RDMA dependencies</title>
<updated>2009-03-04T05:39:40Z</updated>
<author>
<name>Randy Dunlap</name>
<email>randy.dunlap@oracle.com</email>
</author>
<published>2009-03-04T05:39:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=abb79972b4d1dff00f79cb0d123173abac48a6ae'/>
<id>urn:sha1:abb79972b4d1dff00f79cb0d123173abac48a6ae</id>
<content type='text'>
Fix RDS Infiniband dependencies for RDMA so that these
build errors won't happen:

ERROR: "rdma_accept" [net/rds/rds.ko] undefined!
ERROR: "rdma_destroy_id" [net/rds/rds.ko] undefined!
ERROR: "rdma_connect" [net/rds/rds.ko] undefined!
ERROR: "rdma_destroy_qp" [net/rds/rds.ko] undefined!
ERROR: "rdma_listen" [net/rds/rds.ko] undefined!
ERROR: "rdma_notify" [net/rds/rds.ko] undefined!
ERROR: "rdma_create_id" [net/rds/rds.ko] undefined!
ERROR: "rdma_create_qp" [net/rds/rds.ko] undefined!
ERROR: "rdma_bind_addr" [net/rds/rds.ko] undefined!
ERROR: "rdma_resolve_route" [net/rds/rds.ko] undefined!
ERROR: "rdma_disconnect" [net/rds/rds.ko] undefined!
ERROR: "rdma_reject" [net/rds/rds.ko] undefined!
ERROR: "rdma_resolve_addr" [net/rds/rds.ko] undefined!

Signed-off-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Acked-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>rds: Fix build on powerpc.</title>
<updated>2009-03-02T09:49:28Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2009-03-02T09:49:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c3b3240450ab8a1f3e52c5a69d53113deb6f91c5'/>
<id>urn:sha1:c3b3240450ab8a1f3e52c5a69d53113deb6f91c5</id>
<content type='text'>
As reported by Stephen Rothwell.

&gt; Today's linux-next build (powerpc allyesconfig) failed like this:
&gt;
&gt; net/rds/cong.c: In function 'rds_cong_set_bit':
&gt; net/rds/cong.c:284: error: implicit declaration of function 'generic___set_le_bit'
&gt; net/rds/cong.c: In function 'rds_cong_clear_bit':
&gt; net/rds/cong.c:298: error: implicit declaration of function 'generic___clear_le_bit'
&gt; net/rds/cong.c: In function 'rds_cong_test_bit':
&gt; net/rds/cong.c:309: error: implicit declaration of function 'generic_test_le_bit'

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>RDS: Kconfig and Makefile</title>
<updated>2009-02-27T07:43:35Z</updated>
<author>
<name>Andy Grover</name>
<email>andy.grover@oracle.com</email>
</author>
<published>2009-02-24T15:30:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fe17f84f5f2a7d6c1a31c04c06a016d4ad5f7dec'/>
<id>urn:sha1:fe17f84f5f2a7d6c1a31c04c06a016d4ad5f7dec</id>
<content type='text'>
Add RDS Kconfig and Makefile, and modify net/'s to add
us to the build.

Signed-off-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>RDS: Common RDMA transport code</title>
<updated>2009-02-27T07:39:33Z</updated>
<author>
<name>Andy Grover</name>
<email>andy.grover@oracle.com</email>
</author>
<published>2009-02-24T15:30:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=55b7ed0b582f9ff4bf3b9b44969cddda8c6763ea'/>
<id>urn:sha1:55b7ed0b582f9ff4bf3b9b44969cddda8c6763ea</id>
<content type='text'>
Although most of IB and iWARP are separated from each other,
there is some common code required to handle their shared
CM listen port. This code listens for CM events and then
dispatches the event to the appropriate transport, either
IB or iWARP.

Signed-off-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>RDS: Add iWARP support</title>
<updated>2009-02-27T07:39:33Z</updated>
<author>
<name>Andy Grover</name>
<email>andy.grover@oracle.com</email>
</author>
<published>2009-02-24T15:30:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fcd8b7c0ecf792dd824b2edcd63cb2c08563c340'/>
<id>urn:sha1:fcd8b7c0ecf792dd824b2edcd63cb2c08563c340</id>
<content type='text'>
Support for iWARP NICs is implemented as a separate
RDS transport from IB. The code, however, is very
similar to IB (it was forked, basically.) so let's keep
it in one changeset.

The reason for this duplicationis that despite its similarity
to IB, there are a number of places where it has different
semantics. iwarp zcopy support is still under development,
and giving it its own sandbox ensures that IB code isn't
disrupted while iwarp changes. Over time these transports
will re-converge.

Signed-off-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>RDS/IB: Stats and sysctls</title>
<updated>2009-02-27T07:39:32Z</updated>
<author>
<name>Andy Grover</name>
<email>andy.grover@oracle.com</email>
</author>
<published>2009-02-24T15:30:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e6babe4cc4ce48577d743cc0de19a214f2527956'/>
<id>urn:sha1:e6babe4cc4ce48577d743cc0de19a214f2527956</id>
<content type='text'>
IB-specific stats and sysctls.

Signed-off-by: Andy Grover &lt;andy.grover@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
